<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Microsoft.Ccr.Core</name>
    </assembly>
    <members>
        <member name="F:Microsoft.Ccr.Core.CausalityThreadContext.Stacks">
            <summary>
            Collection of causality stacks. Null if only one causality present
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.CausalityThreadContext.ActiveCausality">
            <summary>
            If only one causality is present this field is set
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.CausalityThreadContext.Normalize">
            <summary>
            Collapses empty stacks and if only a single causality is found
            sets ActiveCausality to that causality and Stacks to null
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.CausalityThreadContext.PostException(System.Exception)">
            <summary>
            Posts the exception to the bottom most causality exception port(s), removing those
            causalities from the bottom of the stack.
            </summary>
            <remarks>
            This method assumes that the current instance is non-empty
            </remarks>
            <param name="exception">The exception to post</param>
        </member>
        <member name="T:Microsoft.Ccr.Core.Dispatcher">
            <summary>
            Implementation of the CCR Task Dispatcher/Scheduler
            </summary>
            <remarks>
            Programs can schedule code by adding at least one port to the dispatcher instance
            and then posting task instances. Using Activate() or spawn within the context of a class deriving
            from CcrServiceBase that is associated with a dispatcher port instance is the most common way to interact
            with the dispatcher.
            </remarks>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.AddThread(System.Threading.Thread)">
            <summary>
            Adds a slot to the global causality static table, for the supplied thread instance
            </summary>
            <param name="thread"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.SetCurrentThreadCausalities(Microsoft.Ccr.Core.CausalityThreadContext)">
            <summary>
            Sets all causalities for the current thread, overwriting any that exist
            </summary>
            <param name="context"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.CloneCausalitiesFromCurrentThread">
            <summary>
            Clones local thread causality context for use in a new thread
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.GetCurrentThreadCausalities">
            <summary>
            Returns all causality stacks associated with the current thread
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.AddCausality(Microsoft.Ccr.Core.ICausality)">
            <summary>
            Adds a causality to the current thread causality stack
            </summary>
            <param name="causality"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.AddCausalityBreak">
            <summary>
            Adds a causality with BreakOnReceive = true to the current thread causality stack.
            In a debug build, if a debugger is attached this will cause the debugger to break
            just before the any task in this causality is executed.
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.RemoveCausality(Microsoft.Ccr.Core.ICausality)">
            <summary>
            Removes a causality from the current thread context
            </summary>
            <param name="causality"></param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.ClearCausalities">
            <summary>
            Removes all causalities from current thread context
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.RemoveCausality(System.String)">
            <summary>
            Removes a causality from the current thread context
            </summary>
            <param name="name"></param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.#ctor">
            <summary>
            Constructs a Dispatcher instance using the default number of threads and no friendly tag
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.#ctor(System.Int32,System.String)">
            <summary>
            Constructs a Dispatcher instance. The instance is usable only after AddPort is called at least once
            </summary>
            <param name="threadCount">Number of OS threads to use for processing CCR Tasks</param>
            <param name="threadPoolName">Friendly name to use for the OS Threads and this dispatcher instance</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.#ctor(System.Int32,System.Threading.ThreadPriority,System.Boolean,System.String)">
            <summary>
            Constructs a Dispatcher instance. The instance is usable only after AddPort is called at least once
            </summary>
            <param name="threadCount">Number of OS threads to use for processing CCR Tasks</param>
            <param name="priority">OS Thread priority to use for threads exexuting CCR tasks</param>
            <param name="useBackgroundThreads">If true, background threads are used, which do not prevent application exit</param>
            <param name="threadPoolName">Friendly name to use for the OS Threads and this dispatcher instance</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.#ctor(System.Int32,System.Threading.ThreadPriority,Microsoft.Ccr.Core.DispatcherOptions,System.String)">
            <summary>
            Constructs a Dispatcher instance. The instance is usable only after AddPort is called at least once
            </summary>
            <param name="threadCount">Number of OS threads to use for processing CCR Tasks</param>
            <param name="priority">OS Thread priority to use for threads exexuting CCR tasks</param>
            <param name="options">Dispatcher scheduling options</param>
            <param name="threadPoolName">Friendly name to use for the OS Threads and this dispatcher instance</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.#ctor(System.Int32,System.Threading.ThreadPriority,Microsoft.Ccr.Core.DispatcherOptions,System.Threading.ApartmentState,System.String)">
            <summary>
            Constructs a Dispatcher instance. The instance is usable only after AddPort is called at least once
            </summary>
            <param name="threadCount">Number of OS threads to use for processing CCR Tasks</param>
            <param name="priority">OS Thread priority to use for threads exexuting CCR tasks</param>
            <param name="options">Dispatcher scheduling options</param>
            <param name="threadApartmentState">Thread apartment state. Use ApartmentState.Unknown when STA/MTA is not required for interop</param>
            <param name="threadPoolName">Friendly name to use for the OS Threads and this dispatcher instance</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.#ctor(System.Int32,System.Threading.ThreadPriority,Microsoft.Ccr.Core.DispatcherOptions,System.Threading.ApartmentState,System.Int32,System.String)">
            <summary>
            Constructs a Dispatcher instance. The instance is usable only after AddPort is called at least once
            </summary>
            <param name="threadCount">Number of OS threads to use for processing CCR Tasks</param>
            <param name="priority">OS Thread priority to use for threads exexuting CCR tasks</param>
            <param name="options">Dispatcher scheduling options</param>
            <param name="threadApartmentState">Thread apartment state. Use ApartmentState.Unknown when STA/MTA is not required for interop</param>
            <param name="maxThreadStackSize">Thread maximum stack size</param>
            <param name="threadPoolName">Friendly name to use for the OS Threads and this dispatcher instance</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.AddQueue(System.String,Microsoft.Ccr.Core.DispatcherQueue)">
            <summary>
            Adds a queue, in the form of a DispatcherQueue instance, used to schedule CCR tasks
            </summary>
            <remarks>At least one DispatcherQueue instance must be associated with a Dispatcher instance for any scheduling to occur</remarks>
            <param name="queueName">Friendly tag associated with this Task queue</param>
            <param name="queue">Dispatcher queue instance</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.RemoveQueue(System.String)">
            <summary>
            Removes an ITask port from this dispatcher
            </summary>
            <remarks>The port removal will happen asynchronously to guarantee any tasks posted already on the port execute</remarks>
            <param name="queueName">Friendly name associated with dispatcher port</param>
            <returns>True if the port being removed is the last port associated with this dispatcher. False otherwise. If true dispatcher instance will be disposed asynchronously</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.AddWorker(System.Threading.ThreadPriority,System.Threading.ApartmentState,System.Int32)">
            <summary>
            Creates one TaskExecutionWorker instance associated with one OS thread
            </summary>
            <remarks>This routine should only be called once per dispatcher instance</remarks>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.StartWorkers">
            <summary>
            Starts TaskExecutionWorker instances. 
            </summary>
            <remarks>This routine should only be called once per dispatcher instance</remarks>        
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.Signal">
            <summary>
            Called by the DispatcherQueue post() implementation 
            whenever an ITask instance is enqueued and is available for execution.
            </summary>
            <remarks>
            The Signal() method will ensure at least one TaskExecutionWorker will process
            the enqueued ITask instance next time one of them becomes available.
            </remarks>        
        </member>
        <member name="F:Microsoft.Ccr.Core.Dispatcher._suspendedQueueCount">
            <summary>
            Number of queues in suspend mode. For performance reasons, it is not wrapped in an accessor
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.QueueSuspendNotification">
            <summary>
            Called by dispatcher queues to notify the dispatcher they have been suspended
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.QueueResumeNotification">
            <summary>
            Called by dispatcher queues to notify the dispatcher they have been resumed
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.Dispose">
            <summary>
            Stops all scheduling and disposes this dispatcher instance
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Dispatcher.Shutdown(System.Boolean)">
            <summary>
            Stops all dispatcher worker threads and cleans up the dispatcher
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Dispatcher.ActiveCausalities">
            <summary>
            Retrieves a collection of all the bottom of the stack causalities
            that would be responsible for capturing exceptions in the current context
            </summary>
            <returns></returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.Dispatcher.HasActiveCausalities">
            <summary>
            True indicates that one or more causality is active on the current thread context
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Dispatcher.PendingTaskCount">
            <summary>
            Number of pending tasks across all dispatcher ports associated to this dispatcher
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Dispatcher.ProcessedTaskCount">
            <summary>
            Monotonically increasing counter indicating total number of task processed so far
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Dispatcher.WorkerThreadCount">
            <summary>
            Number of worker threads processing tasks across all dispatcher ports associated with this dispatcher
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Dispatcher.ThreadsPerCpu">
            <summary>
            Number of threads per Cpu, if threads are not specified when initializing the dispatcher
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Dispatcher.Options">
            <summary>
            Dispatcher configuration options
            </summary>
            <remarks>The property should treated as read-only. 
            Changing values after dispatcher initialization does not guarantee they will take effect</remarks>
        </member>
        <member name="P:Microsoft.Ccr.Core.Dispatcher.Name">
            <summary>
            Friendly name associated with this dispatcher instance
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Dispatcher.UnhandledExceptionPort">
            <summary>
            Gets or sets a port that any unhandled exceptions occuring in tasks running in threads
            owned by this dispatcher will be sent to.
            </summary>
            <remarks>
            If the exception is posted to the UnhandledExceptionPort, or an event is raised on the relevant DispatcherQueue
            then an exception will not be posted.
            </remarks>
        </member>
        <member name="E:Microsoft.Ccr.Core.Dispatcher.UnhandledException">
            <summary>
            This event is raised when an unhandled exception occurs in tasks running in threads
            owned by this dispatcher.
            </summary>
            <remarks>
            If the exception is posted to the UnhandledExceptionPort, or an event is raised on the relevant DispatcherQueue
            then this event will not be raised.
            </remarks>
        </member>
        <member name="P:Microsoft.Ccr.Core.Dispatcher.DispatcherQueues">
            <summary>
            Collection of task ports associated with this dispatcher instance
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.ICausality">
            <summary>
            Context for propagating failure and coordination ports across tasks
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.ICausality.Guid">
            <summary>
            Unique identifier
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.ICausality.Name">
            <summary>
            Causality name
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.ICausality.ExceptionPort">
            <summary>
            Exception port
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.ICausality.CoordinationPort">
            <summary>
            Optional port for user specified coordination
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Causality">
            <summary>
            Logical context that flows across tasks
            <remarks>Causalities greatly simplify partial failure handling, by providing a multi threaded version of structured exception handling.
            An exception port supplied within a causality can be used by any handler that was executed as a result of some root action.
            Causalities deal with joins (merge of causalities) and forks, enabling a simple model for hierarchical handling of errors in a 
            concurrent setting</remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Causality.#ctor(System.String)">
            <summary>
            Initialization constructor
            </summary>
            <param name="name">Friendly name</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Causality.#ctor(System.Guid)">
            <summary>
            Initialization constructor
            </summary>
            <param name="guid">Unique identifer</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Causality.#ctor(System.String,Microsoft.Ccr.Core.IPort)">
            <summary>
            Initialization constructor
            </summary>
            <param name="name">Friendly name</param>
            <param name="exceptionPort">Exception port</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Causality.#ctor(System.String,Microsoft.Ccr.Core.IPort,Microsoft.Ccr.Core.IPort)">
            <summary>
            Initialization constructor
            </summary>
            <param name="name">Friendly name</param>
            <param name="exceptionPort">Exception port</param>
            <param name="coordinationPort">Coordination port</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Causality.#ctor(System.String,System.Guid,Microsoft.Ccr.Core.IPort,Microsoft.Ccr.Core.IPort)">
            <summary>
            Initialization constructor
            </summary>
            <param name="name">Friendly name</param>
            <param name="guid">Unique identifier</param>
            <param name="exceptionPort">Exception port</param>
            <param name="coordinationPort">Coordination port</param>
        </member>
        <member name="P:Microsoft.Ccr.Core.Causality.Guid">
            <summary>
            Unique identifier
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Causality.BreakOnReceive">
            <summary>
            If true and a debugger is attached, will cause a break
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Causality.Name">
            <summary>
            Causality name
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Causality.ExceptionPort">
            <summary>
            Exception port
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Causality.CoordinationPort">
            <summary>
            Optional port for user specified coordination
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.DispatcherQueueExtensions">
            <summary>
            CCR DispatcherQueue Class Extensions
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueueExtensions.Spawn(Microsoft.Ccr.Core.DispatcherQueue,Microsoft.Ccr.Core.Handler)">
            <summary>
            Invoke a message handler asynchronously, supplying any arguments explicitly.
            </summary>
            <param name="TaskQueue">DispatcherQueue for this extension to be applied.</param>
            <param name="handler">The message handler to invoke.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueueExtensions.Spawn``1(Microsoft.Ccr.Core.DispatcherQueue,``0,Microsoft.Ccr.Core.Handler{``0})">
            <summary>
            Invoke a message handler asynchronously, supplying any arguments explicitly.
            </summary>
            <param name="TaskQueue">DispatcherQueue for this extension to be applied.</param>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <param name="t0">The 0th parameter to the message handler.</param>
            <param name="handler">The message handler to invoke.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueueExtensions.Spawn``2(Microsoft.Ccr.Core.DispatcherQueue,``0,``1,Microsoft.Ccr.Core.Handler{``0,``1})">
            <summary>
            Invoke a message handler asynchronously, supplying any arguments explicitly.
            </summary>
            <param name="TaskQueue">DispatcherQueue for this extension to be applied.</param>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <typeparam name="T1">The 1th parameter type to the message handler.</typeparam>
            <param name="t0">The 0th parameter to the message handler.</param>
            <param name="t1">The 1th parameter to the message handler.</param>
            <param name="handler">The message handler to invoke.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueueExtensions.Spawn``3(Microsoft.Ccr.Core.DispatcherQueue,``0,``1,``2,Microsoft.Ccr.Core.Handler{``0,``1,``2})">
            <summary>
            Invoke a message handler asynchronously, supplying any arguments explicitly.
            </summary>
            <param name="TaskQueue">DispatcherQueue for this extension to be applied.</param>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <typeparam name="T1">The 1th parameter type to the message handler.</typeparam>
            <typeparam name="T2">The 2th parameter type to the message handler.</typeparam>        
            <param name="t0">The 0th parameter to the message handler.</param>
            <param name="t1">The 1th parameter to the message handler.</param>
            <param name="t2">The 2th parameter to the message handler.</param>
            <param name="handler">The message handler to invoke.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueueExtensions.SpawnIterator(Microsoft.Ccr.Core.DispatcherQueue,Microsoft.Ccr.Core.IteratorHandler)">
            <summary>
            Invoke an iterator-based message handler asynchronously, supplying any arguments explicitly.
            </summary>
            <param name="TaskQueue">DispatcherQueue for this extension to be applied.</param>
            <param name="handler">The message handler to invoke.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueueExtensions.SpawnIterator``1(Microsoft.Ccr.Core.DispatcherQueue,``0,Microsoft.Ccr.Core.IteratorHandler{``0})">
            <summary>
            Invoke an iterator-based message handler asynchronously, supplying any arguments explicitly.
            </summary>
            <param name="TaskQueue">DispatcherQueue for this extension to be applied.</param>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <param name="t0">The 0th parameter to the message handler.</param>
            <param name="handler">The message handler to invoke.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueueExtensions.SpawnIterator``2(Microsoft.Ccr.Core.DispatcherQueue,``0,``1,Microsoft.Ccr.Core.IteratorHandler{``0,``1})">
            <summary>
            Invoke an iterator-based message handler asynchronously, supplying any arguments explicitly.
            </summary>
            <param name="TaskQueue">DispatcherQueue for this extension to be applied.</param>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <typeparam name="T1">The 1th parameter type to the message handler.</typeparam>
            <param name="t0">The 0th parameter to the message handler.</param>
            <param name="t1">The 1th parameter to the message handler.</param>
            <param name="handler">The message handler to invoke.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueueExtensions.SpawnIterator``3(Microsoft.Ccr.Core.DispatcherQueue,``0,``1,``2,Microsoft.Ccr.Core.IteratorHandler{``0,``1,``2})">
            <summary>
            Invoke an iterator-based message handler asynchronously, supplying any arguments explicitly.
            </summary>
            <param name="TaskQueue">DispatcherQueue for this extension to be applied.</param>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <typeparam name="T1">The 1th parameter type to the message handler.</typeparam>
            <typeparam name="T2">The 2th parameter type to the message handler.</typeparam>
            <param name="t0">The 0th parameter to the message handler.</param>
            <param name="t1">The 1th parameter to the message handler.</param>
            <param name="t2">The 2th parameter to the message handler.</param>
            <param name="handler">The message handler to invoke.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueueExtensions.Activate``1(Microsoft.Ccr.Core.DispatcherQueue,``0[])">
            <summary>
            Submits CCR tasks to the dispatcher port for execution. If the task was a receiver orchestration
            like join or choice, executing it means registering constraints on ports to
            guard the execution of user code
            </summary>
            <param name="TaskQueue">DispatcherQueue for this extension to be applied.</param>
            <typeparam name="T">Task instance</typeparam>
            <param name="tasks">Tasks to execute</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueueExtensions.EmptyHandler``1(Microsoft.Ccr.Core.DispatcherQueue,``0)">
            <summary>
            An empty handler implementation that can be used in a receiver to 
            handle a message without side effects
            </summary>
            <param name="TaskQueue">DispatcherQueue for this extension to be applied.</param>        
            <typeparam name="T">The message type</typeparam>
            <param name="message">The message</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueueExtensions.TimeoutPort(Microsoft.Ccr.Core.DispatcherQueue,System.Int32)">
            <summary>
            Creates a port to receive a time signal, registers a timeout with the sequencer,
            supplying the private port. 
            </summary>
            <param name="TaskQueue">DispatcherQueue for this extension to be applied.</param>
            <param name="milliseconds">Timeout in milliseconds</param>
            <returns>Port instance registered with sequencer for receiving timeout signal</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueueExtensions.TimeoutPort(Microsoft.Ccr.Core.DispatcherQueue,System.TimeSpan)">
            <summary>
            Creates a port to receive a time signal, registers a timeout with the sequencer,
            supplying the private port. 
            </summary>
            <param name="TaskQueue">DispatcherQueue for this extension to be applied.</param>
            <param name="ts">Timespan for timeout period</param>
            <returns>Port instance registered with sequencer for receiving timeout signal</returns>
        </member>
        <member name="T:Microsoft.Ccr.Core.Shutdown">
            <summary>
            Generic message type to signle shutdown.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Shutdown.ResultPort">
            <summary>
            Result port instance to report success or failure
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.EmptyValue">
            <summary>
            Utility type, with a singleton instance for use in signalling applications where no values need to be communicated
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.EmptyValue.SharedInstance">
            <summary>
            Singleton
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.SuccessResult">
            <summary>
            Indicates success result
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.SuccessResult.#ctor">
            <summary>
            Default constructor. Status field are default.
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.SuccessResult.#ctor(System.Int32)">
            <summary>
            Constructs a SuccessResult instance with an integer status
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.SuccessResult.#ctor(System.String)">
            <summary>
            Constructs a SuccessResult instance with a string status
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.SuccessResult.Instance">
            <summary>
            Shared instance
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.SuccessResult.StatusMessage">
            <summary>
            Readonly string status
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.SuccessResult.Status">
            <summary>
            Readonly int status
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.SuccessFailurePort">
            <summary>
            Port collection with ports typed for SuccessResult and Exception
            </summary>
            <remarks>This port type is appropriate as the result port type for generic request/response interactions</remarks>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`2">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.IPortSet">
            <summary>
            Required interface for multiple type ports with independent message queues
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.IPort">
            <summary>
            Core interface abstracting CCR single type ports
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.IPort.PostUnknownType(System.Object)">
            <summary>
            Enqueues an object
            </summary>
            <param name="item">Object to enqueue</param>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">Thrown if the port is not compatible with the message instance type</exception>
        </member>
        <member name="M:Microsoft.Ccr.Core.IPort.TryPostUnknownType(System.Object)">
            <summary>
            Attempts to enqueue an untyped message instance 
            </summary>
            <param name="item">Object to enqueue</param>
            <returns>True if message instance type is compatible with port and enqueue succeeded, False otherwise</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.IPortSet.Test``1">
            <summary>
            Atomically removes a message from the port, or returns null if none present
            </summary>
            <returns>An enqueued message if port is not empty. Null otherwise</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.IPortSet.Ports">
            <summary>
            Collection of base ports
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.IPortSet.Item(System.Type)">
            <summary>
            Returned IPort instance associated with item type
            </summary>
            <param name="portItemType">Item type to look up</param>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">Throw if there is no matching type</exception>
            <returns>The matching port</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.IPortSet.SharedPort">
            <summary>
            Shared port instance for all item types
            </summary>
            <remarks>Valid when Mode is PortSetMode.Shared, null otherwise</remarks>
        </member>
        <member name="P:Microsoft.Ccr.Core.IPortSet.Mode">
            <summary>
            PortSet operation mode
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`2.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`2.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`2.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`2.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`2.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`2.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`2.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`2.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1})~`0">
            <summary>
            Invoke the Test method to extract an item of this type
            </summary>
            <param name="port"></param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`2.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1})~`1">
            <summary>
            Invoke the Test method to extract an item of this type
            </summary>
            <param name="port"></param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`2.Test``1">
            <summary>
            Atomically removes a message from the port, or returns null if none present
            </summary>
            <returns>an enqueued messages if port is non empty. Null otherwise</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`2.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1})~Microsoft.Ccr.Core.Choice">
            <summary>
            Implicitly creates a Choice Arbiter with one receiver per type. 
            When a branch is chosen, a delegate will post the item back in the port set
            </summary>
            <param name="portSet">PortSet instance to generate Choice from</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`2.PostUnknownType(System.Object)">
            <summary>
            Untyped post of a message. 
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown when the message type is incompatible with any of the port generic type arguments
            </exception>
            <param name="item">The item to enqueue.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`2.TryPostUnknownType(System.Object)">
            <summary>
            Attempts unsafe (untyped) post of a message instance. 
            <remarks>
            Use to avoid possible exception thrown if message type is incompatible with the port
            </remarks>
            </summary>
            <param name="item"></param>
            <returns>
            If the item type is compatible with one of the contained port types, it enqueues
            the item and returns true. Otherwise it returns false with no exception
            thrown
            </returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`2.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`2.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`2.Ports">
            <summary>
            Array of single queue ports for each generic type in this port instance
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>If the mode of operation is PortSetMode.SharedPort, the single shared port instance is returned</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`2.Item(System.Type)">
            <summary>
            Returns the port instance used to store items of specified type
            </summary>
            <param name="portItemType"></param>
            <returns></returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`2.SharedPort">
            <summary>
            Common port instance for all item types when port is set to SharedMode
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`2.Mode">
            <summary>
            Port operation mode
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Arbiters.PortMode">
            <summary>
            Port operation modes
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.Arbiters.PortMode.Default">
            <summary>
            Default port mode, no optimizations based on registered receivers
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.Arbiters.PortMode.OptimizedSingleReissueReceiver">
            <summary>
            Port posting is optimized with the assumption only a single re-issue receiver
            is registered and it is a single phase (always consumes message during evaluation
            <remarks>This mode should be used with caution. 
            It has strict requirements on the receiver that must be registered with the port:
            1) Only one receiver must be registered
            2) Receiver must be re-issue
            3) Receiver.Process() must be implemented in the derived receiver class
            Note: When the port is in this mode causalities are not propagated.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Arbiters.PortSetMode">
            <summary>
            PortSet operation modes
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.Arbiters.PortSetMode.Default">
            <summary>
            Default mode, independent queues for each type in generic type arguments
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.Arbiters.PortSetMode.SharedPort">
            <summary>
            PortSet uses a single Port instance for all generic type arguments
            <remarks>This mode should be used with caution. It is only appropriate
            for PortSet instances where only a single message instance
            will be posted, chosen from one of the types in the generic port definition. 
            Response ports are a common example where having two independent queues 
            is redundant since only one message, on only one of the queues can ever be posted.
            </remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Arbiters.IPortArbiterAccess">
            <summary>
            Internal only port methods
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiters.IPortArbiterAccess.TestForElement">
            <summary>
            Atomically removes a single element, returns null if none available
            </summary>
            <remarks>Used only by two phase arbiters</remarks>
            <returns>Element instance</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiters.IPortArbiterAccess.TestForMultipleElements(System.Int32)">
            <summary>
            Atomically removes multiple elements, or null if specified number is not available.        
            </summary>
            <remarks>Used only by two phase arbiters</remarks>
            <returns>Array with elements extracted from port</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiters.IPortArbiterAccess.PostElement(Microsoft.Ccr.Core.Arbiters.IPortElement)">
            <summary>
            Inserts Element at the beginning of the Port FIFO
            </summary>
            <remarks>This is unlike all other Post APIs 
            and used only by two phase arbiters that need to return an item to the port</remarks>
            <param name="element">Element to insert</param>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.IPortArbiterAccess.Mode">
            <summary>
            Specifies port operation optimized for different arbiter types
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.ITask">
            <summary>
            Container for executable CCR code
            <remarks>
            Implementation of the Task interface allows code to execute in the context of the
            CCR dispatcher. Arbiters, receive thunks, and unguarded user delegates can use ITask to
            execute in arbitrary context.
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.ITask.PartialClone">
            <summary>
            Shallow clone of Task arguments
            </summary>
            <returns>Cloned task</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.ITask.Execute">
            <summary>
            Invoked by the dispatcher to execute the delegate associated with the task
            </summary>
            <returns>If the delegate is an Iterator handler this will return the iterator instance</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.ITask.LinkedIterator">
            <summary>
            For internal use only. Parent iterator context associated with this task
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.ITask.ArbiterCleanupHandler">
            <summary>
            Handler that executes when task is complete
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.ITask.TaskQueue">
            <summary>
            Dispatcher queue used to schedule this task
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.ITask.Item(System.Int32)">
            <summary>
            Enumeration of all IPortElements associated with this task
            <remarks>If Count is zero it is not valid to call this indexer</remarks>
            </summary>
            <param name="index">Zero based into associated port elements</param>
            <returns>IPortElement instance</returns>
            <exception cref="T:System.NotImplementedException">Thrown if Count is zero</exception>
        </member>
        <member name="P:Microsoft.Ccr.Core.ITask.PortElementCount">
            <summary>
            Number of IPortElements available with this task
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.IPortReceive">
            <summary>
            Receiver registration and dequeuing methods for ports
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.IPortReceive.Test">
            <summary>
            Untyped atomic dequeue
            </summary>
            <returns>A message instance if port not empty, null otherwise</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.IPortReceive.RegisterReceiver(Microsoft.Ccr.Core.Arbiters.ReceiverTask)">
            <summary>
            Associates a receiver (and its arbiter) with the port
            </summary>
            <param name="receiver">Receiver to register</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.IPortReceive.UnregisterReceiver(Microsoft.Ccr.Core.Arbiters.ReceiverTask)">
            <summary>
            Removes a receiver from the port
            </summary>
            <param name="receiver">Receiver to remove</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.IPortReceive.GetReceivers">
            <summary>
            List of receiver thunks attached to the port
            </summary>
            <returns>Array of Receivers</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.IPortReceive.GetItems">
            <summary>
            Queued items
            </summary>
            <returns>Array of objects</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.IPortReceive.Clear">
            <summary>
            Clears all items from port
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.IPortReceive.ItemCount">
            <summary>
            Messages currently in the port
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortNotFoundException">
            <summary>
            Thrown when a message instance of incompatible type is posted on a Port instance
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortNotFoundException.#ctor">
            <summary>
            Default Constructor
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortNotFoundException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serialization default constructor
            </summary>
            <param name="info"></param>
            <param name="context"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortNotFoundException.#ctor(System.String)">
            <summary>
            Thrown on type mismatch
            </summary>
            <param name="message">Exception message</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortNotFoundException.#ctor(System.String,System.Exception)">
            <summary>
            Thrown on type mismatch
            </summary>
            <param name="message">Exception message</param>
            <param name="innerException">Inner Exception</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortNotFoundException.#ctor(Microsoft.Ccr.Core.IPort,System.Object,System.String)">
            <summary>
            
            </summary>
            <param name="port">Port instance that threw the exception</param>
            <param name="posted">Message with type not supported by the port</param>
            <param name="message">Exception message</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortNotFoundException.#ctor(Microsoft.Ccr.Core.IPort,System.Object)">
            <summary>
            
            </summary>
            <param name="port">Port instance that threw the exception</param>
            <param name="posted">Message with type not supported by the port</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortNotFoundException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Provides serialization help for this exception
            </summary>
            <param name="info"></param>
            <param name="context"></param>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortNotFoundException.Port">
            <summary>
            Port instance that threw the exception
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortNotFoundException.ObjectPosted">
            <summary>
            Object that caused the exception when post or postuntyped was attempted
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.Store`1.Receivers">
            <summary>
            Used when more than one receiver is active on the port
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.Store`1.ActiveReceiver">
            <summary>
            Used when a single receiver is registered
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.Store`1.Elements">
            <summary>
            Root node for linked list of port elements (item containers)
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Port`1">
            <summary>
            Type safe message queue and receiver attach point for the CCR.
            </summary>
            <remarks>It enqueues messages and keeps track of receivers
            that can consume messages. Its the primary interaction point for CCR programs
            </remarks>
            <typeparam name="T">Type for messages that can be enqueued</typeparam>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.#ctor">
            <summary>
            Creates a new typed port instance
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.GetReceivers">
            <summary>
            Array of all receivers associated with this port
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.Microsoft#Ccr#Core#IPortReceive#GetReceivers">
            <summary>
            Array of all receivers associated with this port
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.RegisterReceiver(Microsoft.Ccr.Core.Arbiters.ReceiverTask)">
            <summary>
            Associates a receiver task with this port
            </summary>
            <param name="receiver"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.Microsoft#Ccr#Core#IPortReceive#RegisterReceiver(Microsoft.Ccr.Core.Arbiters.ReceiverTask)">
            <summary>
            Registers a receiver/arbiter with the port. If any messages are already in the port
            they will be issued to the thunk being registered
            </summary>
            <remarks>
            This is for advanced uses of the CCR only and most users never need to invoke it
            </remarks>
            <param name="receiver">Receiver instance</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.UnregisterReceiver(Microsoft.Ccr.Core.Arbiters.ReceiverTask)">
            <summary>
            Unregisters a receiver/arbiter from the port.
            </summary>
            <param name="receiver"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.Microsoft#Ccr#Core#IPortReceive#UnregisterReceiver(Microsoft.Ccr.Core.Arbiters.ReceiverTask)">
            <summary>
            Unregisters a receiver/arbiter from the port.
            </summary>
            <remarks>
            Advanced uses of the CCR only
            </remarks>
            <param name="receiver">Receiver instance</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.PostUnknownType(System.Object)">
            <summary>
            Untyped post of an object. 
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown when the item type is incompatible with the port generic type argument
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.HasConversionFromNull">
            <summary>
            Checks if generic type argument is a nullable type
            </summary>
            <returns>True if nullable false otherwise</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.TryPostUnknownType(System.Object)">
            <summary>
            Attempts unsafe (untyped) post of an object. 
            <remarks>
            Use to avoid possible exception thrown if item type is incompatible with the port
            </remarks>
            </summary>
            <param name="item"></param>
            <returns>
            If the item type is compatible with the port type, it enqueues
            the message and returns true. Otherwise it returns false with no exception
            thrown
            </returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.PostElement(Microsoft.Ccr.Core.Arbiters.IPortElement)">
            <summary>
            Returns element at the beginning of FIFO
            </summary>
            <param name="element">
            Message Container previously created from posting to this port
            </param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.Microsoft#Ccr#Core#IPortReceive#GetItems">
            <summary>
            List of queued elements
            </summary>
            <remarks>Internal use only</remarks>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.GetItems">
            <summary>
            All items currently queued. Items are not removed from the port
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.Test">
            <summary>
            Atomically removes a message from the port, or returns null if none present
            </summary>
            <returns>an enqueued messages if port is non empty. Null otherwise</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.TestForElement">
            <summary>
            Atomically removes a message container
            </summary>
            <returns>IPortElement instance if port is non empty. Null otherwise</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.TestForMultipleElements(System.Int32)">
            <summary>
            Atomically removes multiple message containers
            </summary>
            <returns>IPortElement instance array if port has the specified number of elements. Null otherwise</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.Test(`0@)">
            <summary>
            Atomically removes a message from the port, if port is non empty.
            </summary>
            <remarks>
            Non blocking attempt to dequeue a message from the port. Returns false if no message is present
            </remarks>
            <param name="item">
            Set to an instance of a previously enqueued message if port is non empty. Set to default(T) otherwise
            </param>
            <returns>True if a message was succesfully dequeued from the port. False otherwise</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.op_Implicit(Microsoft.Ccr.Core.Port{`0})~`0">
            <summary>
            Invoke the Test method to extract an item
            </summary>
            <param name="port"></param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.ToString">
            <summary>
            Provides a detailed description of the port state including registered receivers and their hierarchy
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.GetHashCode">
            <summary>
            Application domain unique identity for this port instance. Guaranteed to be stable for the lifetime of the port instance
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.Clear">
            <summary>
            Clears all items from the port
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Port`1.op_Implicit(Microsoft.Ccr.Core.Port{`0})~Microsoft.Ccr.Core.Receiver{`0}">
            <summary>
            Implicitly creates a one time Receiver Arbiter registered on this port.
            The receiver will execute a delegate that posts an item back into the port
            </summary>
            <param name="port">Port instance to generate a Receiver from</param>
            <returns></returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.Port`1.Mode">
            <summary>
            Current mode of operation for posting messages
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Port`1.ItemCount">
            <summary>
            Number of messages currently enqueued
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type specified at runtime
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the Ports accessor
            </remarks>
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.PortSet.SharedPortInternal">
            <summary>
            Shared port instance
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.PortSet.PortsTable">
            <summary>
            Table of typed ports
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.PortSet.Types">
            <summary>
            Types supported by this port set
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.PortSet.ModeInternal">
            <summary>
            PortSet operation mode
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet.#ctor">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet.#ctor(System.Type[])">
            <summary>
            Initialization constructor
            </summary>
            <param name="types">Item types supported by this port set</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet.PostUnknownType(System.Object)">
            <summary>
            Untyped post of a message. 
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown when the message type is incompatible with any of the port generic type arguments
            </exception>
            <param name="item">The item to enqueue.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet.TryPostUnknownType(System.Object)">
            <summary>
            Attempts unsafe (untyped) post of a message instance. 
            <remarks>
            Use to avoid possible exception thrown if message type is incompatible with the port
            </remarks>
            </summary>
            <param name="item"></param>
            <returns>
            If the item type is compatible with one of the contained port types, it enqueues
            the item and returns true. Otherwise it returns false with no exception
            thrown
            </returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet.FindTypeFromRuntimeType(System.Object,System.Type[],System.Type@)">
            <summary>
            finds a type match between the runtime type of an object and the type array elements, considering sub type matching
            </summary>
            <param name="item"></param>
            <param name="types"></param>
            <param name="portItemType"></param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet.Test``1">
            <summary>
            Atomically removes a message from the port, or returns null if none present
            </summary>
            <returns>an enqueued messages if port is non empty. Null otherwise</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet.AllocatePort``1">
            <summary>
            Allocates a Port instance of the specified type
            </summary>
            <typeparam name="TYPE">Port item type</typeparam>
            <returns>Port instance</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet.op_Implicit(Microsoft.Ccr.Core.PortSet)~Microsoft.Ccr.Core.Choice">
            <summary>
            Implicitly creates a Choice Arbiter with one receiver per type. 
            When a branch is chosen, a delegate will post the item back in the port set
            </summary>
            <param name="portSet">PortSet instance to generate Choice from</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet.ImplicitChoiceOperator(Microsoft.Ccr.Core.IPortSet)">
            <summary>
            Converts a IPortSet instance to a Choice with a branch for each port type
            </summary>
            <param name="portSet"></param>
            <returns></returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet.Ports">
            <summary>
            Array of single queue ports for each generic type in this port instance
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>If the mode of operation is PortSetMode.SharedPort, the single shared port instance is returned</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet.SharedPort">
            <summary>
            Shared port instance for all generic type arguments of this instance         
            <remarks>Valid if the mode of operation is PortSetMode.SharedPort, null otherwise</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet.Mode">
            <summary>
            Port operation mode
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet.Item(System.Type)">
            <summary>
            Returns the port instance used to store items of specified type
            </summary>
            <param name="portItemType"></param>
            <returns></returns>
        </member>
        <member name="T:Microsoft.Ccr.Core.Arbiter">
            <summary>
            Arbiter factory
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.ExecuteNow(Microsoft.Ccr.Core.DispatcherQueue,Microsoft.Ccr.Core.ITask)">
            <summary>
            Executes task in the current thread context, blocking the current thread until completion but also minimizing thread switches in the case of iterative tasks
            </summary>
            <remarks>The task will block the current thread until it completes. If the task is an iterative task, only the first stage of the iterator is executed in the current thread context</remarks>
            <param name="dispatcherQueue"></param>
            <param name="task"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.Activate(Microsoft.Ccr.Core.DispatcherQueue,Microsoft.Ccr.Core.ITask[])">
            <summary>
            Registers an arbiter on ports and associates a dispatcher queue for executing the
            user's code
            </summary>
            <param name="dispatcherQueue"></param>
            <param name="arbiter"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.FromHandler(Microsoft.Ccr.Core.Handler)">
            <summary>
            Converts a handler delegate to a task so it can be scheduled
            </summary>
            <param name="handler"></param>
            <returns>Instance of Task</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.FromIteratorHandler(Microsoft.Ccr.Core.IteratorHandler)">
            <summary>
            Converts an iterator handler delegate to a task so it can be scheduled
            </summary>
            <param name="handler"></param>
            <returns>Instance of IterativeTask</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.ExecuteToCompletion(Microsoft.Ccr.Core.DispatcherQueue,Microsoft.Ccr.Core.ITask)">
            <summary>
            Activates a task and waits for its completion
            </summary>
            <remarks>Yielding on the return value allows an iterators to logically block for a task completion, even if that task is an iterator itself</remarks>
            <param name="dispatcherQueue">Dispatcher queue used to schedule the task</param>
            <param name="task">Task to execute and wait for its completion</param>
            <returns>Instance of a Receiver task that will execute when task is complete</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.ExecuteToCompletion(Microsoft.Ccr.Core.DispatcherQueue,Microsoft.Ccr.Core.ITask,Microsoft.Ccr.Core.Port{Microsoft.Ccr.Core.EmptyValue})">
            <summary>
            Activates a task and waits for its completion
            </summary>
            <remarks>Posts an item on a port when a task is finished. Allows chaining of tasks for non-iterator methods</remarks>
            <param name="dispatcherQueue">Dispatcher queue used to schedule the task</param>
            <param name="task">Task to execute and wait for its completion</param>
            <param name="donePort">User supplied port to post an empty value when task is complete</param>
            <returns>Instance of a Receiver task that will execute when task is complete</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.Receive``1(System.Boolean,Microsoft.Ccr.Core.Port{``0},Microsoft.Ccr.Core.Handler{``0})">
            <summary>
            Creates a single item receiver
            </summary>
            <typeparam name="T"></typeparam>
            <param name="persist">True if receiver can stay registered with the port after the first message</param>
            <param name="port">Port instance to register receiver with</param>
            <param name="handler">User delegate that executes on message arrival at the port</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.ReceiveFromPortSet``1(System.Boolean,Microsoft.Ccr.Core.IPortSet,Microsoft.Ccr.Core.Handler{``0})">
            <summary>
            Creates a single item receiver. Use with non-generic PortSet instances only
            </summary>
            <typeparam name="T"></typeparam>
            <param name="persist">True if receiver can stay registered with the port after the first message</param>
            <param name="portSet">PortSet instance to register receiver with</param>
            <param name="handler">User delegate that executes on message arrival at the port</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.Receive``1(System.Boolean,Microsoft.Ccr.Core.Port{``0},Microsoft.Ccr.Core.Handler{``0},System.Predicate{``0})">
            <summary>
            Creates a single item receiver
            </summary>
            <typeparam name="T">Message type</typeparam>
            <param name="persist">True if receiver can stay registered with the port after the first message</param>
            <param name="port">Port instance to register receiver with</param>
            <param name="handler">User delegate that executes on message arrival at the port</param>
            <param name="predicate">User delegate that executes before the handler is allowed to run and filter each message</param>
            <returns>Instance of Receiver arbiter</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.ReceiveFromPortSet``1(System.Boolean,Microsoft.Ccr.Core.IPortSet,Microsoft.Ccr.Core.Handler{``0},System.Predicate{``0})">
            <summary>
            Creates a single item receiver. Use with non-generic PortSet instances only
            </summary>
            <typeparam name="T">Message type</typeparam>
            <param name="persist">True if receiver can stay registered with the port after the first message</param>
            <param name="portSet">Port instance to register receiver with</param>
            <param name="handler">User delegate that executes on message arrival at the port</param>
            <param name="predicate">User delegate that executes before the handler is allowed to run and filter each message</param>
            <returns>Instance of Receiver arbiter</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.ReceiveWithIterator``1(System.Boolean,Microsoft.Ccr.Core.Port{``0},Microsoft.Ccr.Core.IteratorHandler{``0})">
            <summary>
            Creates a single item receiver for a iterator user handler
            </summary>
            <typeparam name="T">Message type</typeparam>
            <param name="persist">True if receiver can stay registered with the port after the first message</param>
            <param name="port">Port instance to register receiver with</param>
            <param name="handler">User delegate that executes on message arrival at the port</param>
            <returns>Instance of Receiver arbiter</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.ReceiveWithIteratorFromPortSet``1(System.Boolean,Microsoft.Ccr.Core.IPortSet,Microsoft.Ccr.Core.IteratorHandler{``0})">
            <summary>
            Creates a single item receiver for a iterator user handler. Use with non-generic PortSet instances only
            </summary>
            <typeparam name="T">Message type</typeparam>
            <param name="persist">True if receiver can stay registered with the port after the first message</param>
            <param name="portSet">Port instance to register receiver with</param>
            <param name="handler">User delegate that executes on message arrival at the port</param>
            <returns>Instance of Receiver arbiter</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.ReceiveWithIterator``1(System.Boolean,Microsoft.Ccr.Core.Port{``0},Microsoft.Ccr.Core.IteratorHandler{``0},System.Predicate{``0})">
            <summary>
            Creates a single item receiver for a iterator user handler
            </summary>
            <typeparam name="T">Message type</typeparam>
            <param name="persist">True if receiver can stay registered with the port after the first message</param>
            <param name="port">Port instance to register receiver with</param>
            <param name="handler">User delegate that executes on message arrival at the port</param>
            <param name="predicate">User delegate that executes before the handler is allowed to run and filter each message</param>
            <returns>Instance of Receiver arbiter</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.ReceiveWithIteratorFromPortSet``1(System.Boolean,Microsoft.Ccr.Core.IPortSet,Microsoft.Ccr.Core.IteratorHandler{``0},System.Predicate{``0})">
            <summary>
            Creates a single item receiver for a iterator user handler. Use with non-generic PortSet instances only
            </summary>
            <typeparam name="T">Message type</typeparam>
            <param name="persist">True if receiver can stay registered with the port after the first message</param>
            <param name="portSet">Port instance to register receiver with</param>
            <param name="handler">User delegate that executes on message arrival at the port</param>
            <param name="predicate">User delegate that executes before the handler is allowed to run and filter each message</param>
            <returns>Instance of Receiver arbiter</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.JoinedReceive``2(System.Boolean,Microsoft.Ccr.Core.Port{``0},Microsoft.Ccr.Core.Port{``1},Microsoft.Ccr.Core.Handler{``0,``1})">
            <summary>
            Creates a join receiver arbiter that waits for two messages to arrive on two ports, in any order
            </summary>
            <remarks>Joined receives perform a two phase protocol to extracting, one at a time, items for the ports in the join.
            This guarantees that if two different joins, that are listening on one or more shared port, can continue to make progress
            without starvation. However it has significant performance implications if there is alot of contention on these ports.
            MultipleItemReceive methods are recommended for cases where consuming the items on a port directly is not an issue
            and scatter/gather is the main goal.
            </remarks>
            <typeparam name="T0">Message type</typeparam>
            <typeparam name="T1">Message type</typeparam>
            <param name="persist">True if receiver can stay registered with the port after the first message </param>
            <param name="port0">Port instance for message type T0</param>
            <param name="port1">Port instance for message type T1</param>
            <param name="handler">User delegate that will execute when the join is satisfied</param>
            <returns>Instance of JointReceiver arbiter</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.JoinedReceiveWithIterator``2(System.Boolean,Microsoft.Ccr.Core.Port{``0},Microsoft.Ccr.Core.Port{``1},Microsoft.Ccr.Core.IteratorHandler{``0,``1})">
            <summary>
            Creates a join receiver arbiter that waits for two messages to arrive on two ports, in any order
            </summary>
            <typeparam name="T0">Message type</typeparam>
            <typeparam name="T1">Message type</typeparam>
            <param name="persist">True if receiver can stay registered with the port after the first message </param>
            <param name="port0">Port instance for message type T0</param>
            <param name="port1">Port instance for message type T1</param>
            <param name="handler">User delegate of an iterator that will execute when the join is satisfied</param>
            <returns>Instance of JointReceiver arbiter</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.MultipleItemReceive``1(System.Boolean,Microsoft.Ccr.Core.Port{``0},System.Int32,Microsoft.Ccr.Core.VariableArgumentHandler{``0})">
            <summary>
            Create a join receiver that will wait for a specified number of messages on a single port
            </summary>
            <typeparam name="T">Message type</typeparam>
            <param name="persist">True if receiver can stay registered with the port after the first message</param>
            <param name="port">Port instance to attach receiver</param>
            <param name="itemCount">Number of messages to wait for before executing user delegate</param>
            <param name="handler">User delegate</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.MultiplePortReceive``1(System.Boolean,Microsoft.Ccr.Core.Port{``0}[],Microsoft.Ccr.Core.VariableArgumentHandler{``0})">
            <summary>
            Create a join receiver that will wait for a specified number of messages across multiple ports
            </summary>
            <typeparam name="T">Message type</typeparam>
            <param name="persist">True if receiver can stay registered with the port after the first message</param>
            <param name="ports">Ports to register receiver with</param>
            <param name="handler">User delegate</param>
            <returns>Instance of JoinReceiver arbiter</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.MultipleItemReceive``1(Microsoft.Ccr.Core.VariableArgumentHandler{``0},Microsoft.Ccr.Core.Port{``0}[])">
            <summary>
            A helper task that collects items from multiple ports.
            It then accumulates the results in a collection. When the supplied count
            is reached it will execute the user task. This is not a Join, since it does not implement a two phase protocol
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.MultipleItemReceive``2(Microsoft.Ccr.Core.PortSet{``0,``1},System.Int32,Microsoft.Ccr.Core.Handler{System.Collections.Generic.ICollection{``0},System.Collections.Generic.ICollection{``1}})">
            <summary>
            Creates a coordination task that collects items from multiple ports in the same PortSet.
            It then accumulates the results in collections based on item type. When the supplied count
            is reached it will execute the user task. 
            </summary>
            <param name="portSet">PortSet instance</param>
            <param name="totalItemCount">Total number of items to receive across all ports in the PortSet instance</param>
            <param name="handler">User delegate</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.Interleave(Microsoft.Ccr.Core.TeardownReceiverGroup,Microsoft.Ccr.Core.ExclusiveReceiverGroup,Microsoft.Ccr.Core.ConcurrentReceiverGroup)">
            <summary>
            Creates an interleave arbiter using the supplied receiver groups
            </summary>
            <param name="teardown">Group of receivers that will execute only once and cause the interleave to teardown atomically</param>
            <param name="exclusive">Group of receivers that can only run exclusively (no other receiver can be active)</param>
            <param name="concurrent">Group of receivers that can execute concurrently with only receivers in the concurrent group</param>
            <returns>Instance of a Choice Arbiter</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.Choice(Microsoft.Ccr.Core.Arbiters.ReceiverTask[])">
            <summary>
            Creates a choice arbiter
            </summary>
            <param name="receivers">Receivers that will execute only once and exclusive of each other</param>
            <returns>Instance of Choice Arbiter</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.Choice(Microsoft.Ccr.Core.IPortSet)">
            <summary>
            Creates a choice arbiter with a branch for each port in the port set
            </summary>
            <remarks>
            A non-persisted receiver is attached to each port on the port set and used as a branch
            in the Choice arbiter. When the first item arrives on any of the ports within the port set,
            the receiver simply posts the item back, allowing the choice to complete. Use this method
            within iterators, followed by a call to the Test method on the port set to retrieve the item
            or by simply assigning the port set to a variable of one of the PortSet types
            </remarks>
            <param name="portSet">PortSet instance to create Choice with</param>
            <returns>Instance of Choice Arbiter</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.Choice``2(Microsoft.Ccr.Core.PortSet{``0,``1},Microsoft.Ccr.Core.Handler{``0},Microsoft.Ccr.Core.Handler{``1})">
            <summary>
            Creates a common version of the instance arbiter given a port set with two types and 
            a delegate for each type
            </summary>
            <param name="resultPort">PortSet to attach one time receivers with the supplied delegates</param>
            <param name="handler0">Delegate for message type T0</param>
            <param name="handler1">Delegate for message type T1</param>
            <returns>Instance of Choice arbiter</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiter.WaitForMultipleTasks(Microsoft.Ccr.Core.DispatcherQueue,Microsoft.Ccr.Core.ITask[])">
            <summary>
            Schedules multiple tasks for parallel execution, returning a port that will be posted
            when the tasks complete.
            </summary>
            <param name="taskQueue">The DispatcherQueue that will schedule the tasks</param>
            <param name="tasks">The tasks to execute in parallel</param>
            <returns>A port that will be posted when the tasks complete</returns>
            <exception cref="T:System.ArgumentNullException">
            Thrown when either <paramref name="taskQueue"/> or <paramref name="tasks"/> is null.
            </exception>
        </member>
        <member name="T:Microsoft.Ccr.Core.TaskCommon">
            <summary>
            Common base class for ITask implementations
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.TaskCommon.PartialClone">
            <summary>
            Abstract definition of PartialClone
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.TaskCommon.Execute">
            <summary>
            Abstract definition of Execute
            </summary>
            <returns></returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.TaskCommon.ArbiterCleanupHandler">
            <summary>
            Set by a top level arbiter so it can execute logic on task completion
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.TaskCommon.LinkedIterator">
            <summary>
            Iterator that needs to be processed once current task completes
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.TaskCommon.TaskQueue">
            <summary>
            Dispatcher queue to use for scheduling any tasks 
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.TaskCommon.Item(System.Int32)">
            <summary>
            Abstract definition of element indexer
            </summary>
            <param name="index"></param>
            <returns></returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.TaskCommon.PortElementCount">
             <summary>
            Abstract definition of element count
             </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Task">
            <summary>
            Implementation of ITask for zero argument handlers
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Task.#ctor(Microsoft.Ccr.Core.Handler)">
            <summary>
            Constructs a zero argument Task instance
            </summary>
            <remarks>If causalities are active they are captured at constructor invokation</remarks>
            <param name="handler"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Task.PartialClone">
            <summary>
            Shallow copy of this Task Instance
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Task.Execute">
            <summary>
            Executes Handler associated with task instance
            </summary>
            <returns></returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.Task.Handler">
            <summary>
            Delegate associated with the Task instance
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Task.Item(System.Int32)">
            <summary>
            Not implemented on zero argument task instances
            </summary>
            <param name="index"></param>
            <returns></returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.Task.PortElementCount">
            <summary>
            Always returns zero
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.IterativeTask">
            <summary>
            Zero argument Task instance associated with an iterator handler
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask.#ctor(Microsoft.Ccr.Core.IteratorHandler)">
            <summary>
            Constructs an IterativeTask instance
            </summary>
            <param name="handler">Iterator delegate</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask.PartialClone">
            <summary>
            Shallow clone
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask.Execute">
            <summary>
            Executes Handler associated with task instance
            </summary>
            <returns></returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.IterativeTask.Handler">
            <summary>
            Iterator handler associated with task
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.IterativeTask.Item(System.Int32)">
            <summary>
            Not supported on zero argument task instances
            </summary>
            <param name="index"></param>
            <returns></returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.IterativeTask.PortElementCount">
            <summary>
            always returns zero
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.InterleaveReceiverGroup">
            <summary>
            Receiver group
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.InterleaveReceiverGroup.#ctor(Microsoft.Ccr.Core.Arbiters.ReceiverTask[])">
            <summary>
            Constructs an group of receivers
            </summary>
            <param name="branches">Receivers</param>
        </member>
        <member name="T:Microsoft.Ccr.Core.TeardownReceiverGroup">
            <summary>
            Receivers that will execute one time only after all concurrent and exclusive handlers
            are finished. The interleave will then un register all receivers from ports and prevent
            any further handlers form executing. 
            If multiple teardown receivers are present, only one will execute, the one that first has its
            constraints (first one that receives a message for simple receives) met.
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.TeardownReceiverGroup.#ctor(Microsoft.Ccr.Core.Arbiters.ReceiverTask[])">
            <summary>
            
            </summary>
            <param name="branches"></param>
        </member>
        <member name="T:Microsoft.Ccr.Core.ExclusiveReceiverGroup">
            <summary>
            Receivers with user delegates that must run exclusive to each other and any receiver in a Concurrent group
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.ExclusiveReceiverGroup.#ctor(Microsoft.Ccr.Core.Arbiters.ReceiverTask[])">
            <summary>
            Constructs an Exclusive group of receivers
            </summary>
            <param name="branches">Receivers</param>
        </member>
        <member name="T:Microsoft.Ccr.Core.ConcurrentReceiverGroup">
            <summary>
            Receivers with user delegates that can run concurrently with each other
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.ConcurrentReceiverGroup.#ctor(Microsoft.Ccr.Core.Arbiters.ReceiverTask[])">
            <summary>
            Constructs a ConcurrentReceiverGroup instance
            </summary>
            <param name="branches"></param>
        </member>
        <member name="T:Microsoft.Ccr.Core.InterleaveReceivers">
            <summary>
            Classification of interleave receiver groups
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.InterleaveReceivers.Teardown">
            <summary>
            Exclusive one-time receiver that tears down the interleave context atomically
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.InterleaveReceivers.Exclusive">
            <summary>
            Exclusive receiver
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.InterleaveReceivers.Concurrent">
            <summary>
            Concurrent receiver
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.InterleaveReceiverContext">
            <summary>
            Private tuple of receiver context used by the interleave arbiter and associated with each receive branch
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Interleave">
            <summary>
            The Interleave arbiter is a generalization of reader/writer lock style synchronization
            </summary>
            <remarks>
            Intelreave will guarantee that the user delegates associated with the receivers
            in the Exclusive group will run Exclusive to eah other and any delegate associated with the Concurrent receivers.
            Interleav eis biased towards Exclusive receivers so if a Concurrent receiver is currently executing and an
            Exclusive receiver is ready to execute, it will wait untilt he Concurrent receiver is complete and it will 
            preempt any more Concurrent receivers from running until all Exclusive receivers have run
            </remarks>
        </member>
        <member name="T:Microsoft.Ccr.Core.Arbiters.IArbiterTask">
            <summary>
            All CCR arbiters that allow nesting must implement this interface
            <remarks>
            Arbiters implement the coordination logic between user code and one or more ports.
            Usually an arbiter also implements Receiver so it can be directly attached to
            a port. The arbiter logic is invoked in the context of Port.Post() and 
            in non side-effecting way, determines it can consume the message and schedule the users code
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiters.IArbiterTask.Evaluate(Microsoft.Ccr.Core.Arbiters.ReceiverTask,Microsoft.Ccr.Core.ITask@)">
            <summary>
            This method is invoked in the context of port post(). It must be non blocking
            and has to determine if the message being posted can be directly consumed or
            schedule a second phase by returning a task
            </summary>
            <param name="receiver">The receive thunk nested under this arbiter that caused the arbiter to get called</param>
            <param name="deferredTask">The arbiter can set this parameter if it wants a task scheduler upon function exit</param>
            <returns></returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.IArbiterTask.ArbiterState">
            <summary>
            Current State of the arbiter
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.Interleave._mutexBranches">
            <summary>
            List of exclusive receiver tasks.
            Mutex branch reference is used as the synchronization object for the interleave
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.Interleave._concurrentBranches">
            <summary>
            List of concurrent receiver tasks
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Interleave.ToString">
            <summary>
            Human readable description of interleave branches and current state
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Interleave.#ctor">
            <summary>
            Constructs an empty interleave instance
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Interleave.#ctor(Microsoft.Ccr.Core.TeardownReceiverGroup,Microsoft.Ccr.Core.ExclusiveReceiverGroup,Microsoft.Ccr.Core.ConcurrentReceiverGroup)">
            <summary>
            Constructs an interleave arbiter composed out of an Exclusive and Concurrent group of receivers
            </summary>
            <param name="teardown">Teardown Receivers</param>
            <param name="mutex">Mutually Exclusive receivers</param>
            <param name="concurrent">Receivers that can execute their delegates Concurrent to each other</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Interleave.#ctor(Microsoft.Ccr.Core.ExclusiveReceiverGroup,Microsoft.Ccr.Core.ConcurrentReceiverGroup)">
            <summary>
            Constructs an interleave arbiter composed out of an Exclusive and Concurrent group of receivers
            </summary>
            <param name="mutex">Mutually Exclusive receivers</param>
            <param name="concurrent">Receivers that can execute their delegates Concurrent to each other</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Interleave.PartialClone">
            <summary>
            Not supported
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Interleave.Execute">
            <summary>
            Registers the interleave arbiter as a parent to all the participating receivers
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Interleave.CombineWith(Microsoft.Ccr.Core.Interleave)">
            <summary>
            Allows a new interleave arbiter instance, to be combined with an existing active interleave
            </summary>
            <param name="child">Interleave instance to combine with parent</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Interleave.Cleanup(Microsoft.Ccr.Core.ITask)">
            <summary>
            Cleanup any pending Exclusive and Concurrent branches, then schedule Winner task
            </summary>
            <param name="winner">Task that should execute after cleanup</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Interleave.Evaluate(Microsoft.Ccr.Core.Arbiters.ReceiverTask,Microsoft.Ccr.Core.ITask@)">
            <summary>
            Invoked by port logic to let arbiter examing message instances as they get posted
            </summary>
            <param name="receiver">Nested receiver thunk instance associated with port being posted on</param>
            <param name="deferredTask">Set to task if the arbiter has something to schedule</param>
            <returns>true if the task needs to be scheduled</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Interleave.Arbitrate(System.Boolean)">
            <summary>
            Changes the interleave state variables. Must be called under a lock
            </summary>
            <param name="IsExclusive"></param>
            <returns></returns>
        </member>
        <member name="F:Microsoft.Ccr.Core.Interleave._nextMutexQueueIndex">
            <summary>
            Index into the _mutexBranches collection for the next receiver task that should be processed for pending items
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Interleave.ProcessPending(System.Boolean,System.Collections.Generic.List{Microsoft.Ccr.Core.Arbiters.ReceiverTask})">
            <summary>
            Round robin between all the queues associated with each receiver and dequeue a single pending task
            </summary>
            <param name="IsExclusive"></param>
            <param name="receivers"></param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Interleave.TryDequeuePendingTask(Microsoft.Ccr.Core.InterleaveReceivers)">
            <summary>
            Attempts to dequeue a pending task from one of the internal interleave queues
            </summary>
            <remarks>The method should be used only in advanced scenarios where low level control of interleave behavior is required</remarks>
            <param name="receiverMask">Flag indicating which receiver group that receiver belongs to</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Interleave.TryDequeuePendingTask(Microsoft.Ccr.Core.Arbiters.ReceiverTask,System.Int32)">
            <summary>
            Attempts to dequeue a pending task from th einternal interleave queue of a specific receiver
            </summary>
            <remarks>The method should be used only in advanced scenarios where low level control of interleave behavior is required</remarks>
            <param name="receiver">Interleave child receiver task to dequeue pending items for</param>
            <param name="queueDepthMin">Minimum number of items that must already be in the queue, for de-queue operation to proceed </param>
            <returns></returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.Interleave.PendingExclusiveCount">
            <summary>
            Number of queued exclusive tasks waiting to execute
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Interleave.PendingConcurrentCount">
            <summary>
            Number of queued concurrent tasks waiting to execute
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Interleave.ArbiterCleanupHandler">
            <summary>
            Set by a top level arbiter so it can execute logic on task completion
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Interleave.LinkedIterator">
            <summary>
            Iterator that needs to be processed once current task completes
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Interleave.ArbiterState">
            <summary>
            Current state
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Interleave.TaskQueue">
            <summary>
            Dispatcher queue to use for scheduling tasks 
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Interleave.Item(System.Int32)">
            <summary>
            Not supported
            </summary>
            <param name="index"></param>
            <returns></returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.Interleave.PortElementCount">
            <summary>
            Always zero
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.JoinReceiverTask">
            <summary>
            Shared logic for join arbiters
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Arbiters.ReceiverTask">
            <summary>
            Base class for receiver implementations
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiters.ReceiverTask.ToString">
            <summary>
            Human readabable description of receiver type, associated handler, nesting hierarchy and state
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiters.ReceiverTask.#ctor">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiters.ReceiverTask.#ctor(Microsoft.Ccr.Core.ITask)">
            <summary>
            Initialization constructor
            </summary>
            <param name="taskToRun">Task to execute when receiver condition is satisfied</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiters.ReceiverTask.PartialClone">
            <summary>
            Shallow clone of receiver state and task state
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiters.ReceiverTask.Execute">
            <summary>
            Invoked by the scheduler to register the receiver on the ports. 
            </summary>
            <remarks>If the scheduler directly calls this routine it means this receiver is not nested under any arbiter</remarks>
            <returns>Returns null always</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiters.ReceiverTask.Evaluate(Microsoft.Ccr.Core.Arbiters.IPortElement,Microsoft.Ccr.Core.ITask@)">
            <summary>
            Invoked by port post logic when a new message instance is enqueued
            </summary>
            <param name="deferredTask">set to a task instance if the receiver meets its constraints and consumes the message</param>
            <param name="messageNode">Message container being posted on the port</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiters.ReceiverTask.Consume(Microsoft.Ccr.Core.Arbiters.IPortElement)">
            <summary>
            Invoked when port has been set to the PortOperationMode.SingleReIssueReceiver.
            Assumes item will be consumed and any task generated will be scheduled by receiver
            </summary>
            <param name="item"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiters.ReceiverTask.Cleanup">
            <summary>
            invoked by a parent arbiter when arbitration is complete. This method is always called even if this receiver won
            </summary>
            <remarks>For persisted receivers cleanup requires un registering from ports</remarks>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiters.ReceiverTask.Cleanup(Microsoft.Ccr.Core.ITask)">
            <summary>
            invoked by a parent arbiter for queued tasks that failed to execute. Items stored in the task must be returned to ports
            </summary>
            <param name="taskToCleanup">Task to use for re-posting arguments back to ports</param>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.ReceiverTask.ArbiterContext">
            <summary>
            Used by parent arbiter to store context
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.ReceiverTask.Arbiter">
            <summary>
            Parent arbiter. The setter can only be invoked once
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.ReceiverTask.State">
            <summary>
            Receiver state
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.ReceiverTask.Item(System.Int32)">
            <summary>
            Returns the arguments contained in the receiver
            </summary>
            <param name="index">Argument index</param>
            <returns>Argument instance</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.ReceiverTask.PortElementCount">
            <summary>
            Number of arguments this receiver is waiting on
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.ReceiverTask.UserTask">
            <summary>
            Task instance that contains the user delegate plus arguments.
            </summary>
            <remarks>The task instance will be scheduled if the receiver constraints are met</remarks>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiverTask.Register">
            <summary>
            Must be implemented by derived classes
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiverTask.Cleanup(Microsoft.Ccr.Core.ITask)">
            <summary>
            Must be implemented by derived classes
            </summary>
            <param name="taskToCleanup"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiverTask.ShouldCommit">
            <summary>
            Must be implemented by derived classes
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiverTask.Evaluate(Microsoft.Ccr.Core.Arbiters.ReceiverTask,Microsoft.Ccr.Core.ITask@)">
            <summary>
            Determines if a commit should be scheduled by checking if all items from ports are available
            </summary>
            <returns>always returns false since join never</returns>
        </member>
        <member name="F:Microsoft.Ccr.Core.JoinReceiverTask._commitAttempt">
            <summary>
            used to guard against multiple activations of user delegate on one-time joins
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiverTask.Commit">
            <summary>
            Must be implemented by derived classes
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiverTask.Arbitrate(Microsoft.Ccr.Core.ITask,Microsoft.Ccr.Core.Arbiters.IPortElement[],System.Boolean)">
            <summary>
            Determines if join commit can proceed
            </summary>
            <param name="winner">Task to execute if commit occurs</param>
            <param name="items">Items retrieved from ports</param>
            <param name="allTaken">True if the join retrieved all necessery items. False if partial commit occured</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiverTask.UnrollPartialCommit(Microsoft.Ccr.Core.Arbiters.IPortElement[])">
            <summary>
            Must be implemented by derived classes.
            </summary>
            <param name="items"></param>
        </member>
        <member name="P:Microsoft.Ccr.Core.JoinReceiverTask.Arbiter">
            <summary>
            Parent arbiter instance
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.JoinReceiverTask.ArbiterState">
            <summary>
            Arbiter state
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.JoinReceiver">
            <summary>
            Join implementation across multiple ports
            </summary>
            <remarks>
            The join arbiter will attach individual receivers on each port participating in the join.
            As messages get posted in the ports, the parent arbiter (an instance of JoinReceiver)
            will determine if it has messages across all ports. Without actually consuming the messages
            It will schedule a commit phase and try to extract, using the Test() method on the ports,
            all the messages required for the join to complete. If all messages are retrived, commit succeeds but
            the arbiter will still ask its parent (since join can be nested under choice or interleave)
            if it can proceed scheduling the user delegate. If it can, it schedules a task with all the messages as arguments.
            If it fails, it will call UnrollPartialCommit to put the messages back in their original ports
            </remarks>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiver.ToString">
            <summary>
            Description of JoinReceiver state
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiver.#ctor(System.Boolean,Microsoft.Ccr.Core.ITask,Microsoft.Ccr.Core.IPortReceive[])">
            <summary>
            Constructs a Join Receiver, an arbiter that waits for one message per port in any order
            </summary>
            <param name="persist">Set to true if join persists on the ports after processing one set of messages</param>
            <param name="task">User task that will execute when join is satisfied</param>
            <param name="ports">Ports that participate in the join</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiver.Cleanup">
            <summary>
            Removes individual receiver thunks attached to ports participating in the join
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiver.Cleanup(Microsoft.Ccr.Core.ITask)">
            <summary>
            Returns messages instances attached to the task instance, to the appropriate ports
            participating in the join
            </summary>
            <param name="taskToCleanup">Task instance with message arguments to post back</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiver.Register">
            <summary>
            Registers child receivers on each port in the join, so it can get notified when messages
            become available in the ports
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiver.Evaluate(Microsoft.Ccr.Core.Arbiters.IPortElement,Microsoft.Ccr.Core.ITask@)">
            <summary>
            Invoked in the context of Port.Post() to examine a message
            </summary>
            <param name="deferredTask">Always set to null</param>
            <param name="messageNode">Message instance being posted</param>
            <returns>Always false</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiver.Consume(Microsoft.Ccr.Core.Arbiters.IPortElement)">
            <summary>
            Consume
            </summary>
            <param name="item"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiver.ShouldCommit">
            <summary>
            Checks if the ports participating in the join have one message each so it can schedule
            a Commit phase and attempt to retrieve the items
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiver.Commit">
            <summary>
            Attempts to remove one item per port and complete the join
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinReceiver.UnrollPartialCommit(Microsoft.Ccr.Core.Arbiters.IPortElement[])">
            <summary>
            If the join commit fails for any reason this routine will post back any items
            taken from ports
            </summary>
            <param name="items"></param>
        </member>
        <member name="T:Microsoft.Ccr.Core.JoinSinglePortReceiver">
            <summary>
            Join receiver that waits for N items all on the same port
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinSinglePortReceiver.#ctor(System.Boolean,Microsoft.Ccr.Core.ITask,Microsoft.Ccr.Core.IPortReceive,System.Int32)">
            <summary>
            A Join receiver that waits for N messages on the same port
            </summary>
            <param name="persist">Set to true if join persists on the ports after it executes the user task once</param>
            <param name="task">User task that will execute when join is satisfied</param>
            <param name="port">Port used to receive the messages</param>
            <param name="count">Number of messages to wait for before join is satisfied</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinSinglePortReceiver.Cleanup">
            <summary>
            Unregisters from the port
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinSinglePortReceiver.Cleanup(Microsoft.Ccr.Core.ITask)">
            <summary>
            Posts back to the port any message instances associated with the task
            </summary>
            <param name="taskToCleanup"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinSinglePortReceiver.Register">
            <summary>
            register this join arbiter directly on the single port participating in the join
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinSinglePortReceiver.ShouldCommit">
            <summary>
            Determines if the port has N messages and if it does schedules a commit
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinSinglePortReceiver.Evaluate(Microsoft.Ccr.Core.Arbiters.IPortElement,Microsoft.Ccr.Core.ITask@)">
            <summary>
            Called in the context of Port.Post() to check if the join can schedule a commit
            </summary>
            <param name="deferredTask">Not used</param>
            <param name="messageNode">Message being posted. Not used</param>
            <returns>always returns false since it never consumes a message</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinSinglePortReceiver.Consume(Microsoft.Ccr.Core.Arbiters.IPortElement)">
            <summary>
            Consume
            </summary>
            <param name="item"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinSinglePortReceiver.Commit">
            <summary>
            Attempts to retrieve N items from the same port
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.JoinSinglePortReceiver.UnrollPartialCommit(Microsoft.Ccr.Core.Arbiters.IPortElement[])">
            <summary>
            If commit fails this routine gets called to post back any items mremoved from the port
            </summary>
            <param name="items"></param>
        </member>
        <member name="T:Microsoft.Ccr.Core.MultipleItemHelperReceiver">
            <summary>
            Receiver that attaches to ports included in a MultipleItemReceiver. Calls to
            parent when messages is posted on its attached port
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Receiver">
            <summary>
            The most basic arbiter associates a user delegate (a receiver) with a port
            </summary>
            <remarks>
            When a message is posted to a port with a Receiver attached, the receiver will
            always consume the message, create a Task with the message and user delegate as arguments and schedule the task
            </remarks>
        </member>
        <member name="M:Microsoft.Ccr.Core.Receiver.#ctor(Microsoft.Ccr.Core.IPortReceive,Microsoft.Ccr.Core.ITask)">
            <summary>
            Constructs a SingleItemReceiver
            </summary>
            <param name="port">Port that the receiver will be attached to</param>
            <param name="task">Task instance typed to the same type as the port and with a user handler specified</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Receiver.#ctor(System.Boolean,Microsoft.Ccr.Core.IPortReceive,Microsoft.Ccr.Core.ITask)">
            <summary>
            Constructs a SingleItemReceiver
            </summary>
            <param name="persist"></param>
            <param name="port"></param>
            <param name="task"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Receiver.Cleanup">
            <summary>
            Unregisters this receiver instance from the port
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Receiver.Cleanup(Microsoft.Ccr.Core.ITask)">
            <summary>
            Post back any message instances associated with the Task instance
            </summary>
            <param name="taskToCleanup"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Receiver.Evaluate(Microsoft.Ccr.Core.Arbiters.IPortElement,Microsoft.Ccr.Core.ITask@)">
            <summary>
            Invoked in the context Port.Post(). The receiver will consult its parent
            arbiter and if the parent accepts, the receiver will consume the item, 
            and schedule a task with it as an argument
            </summary>
            <param name="deferredTask">Set to a task instance with the user delegate and message if arbitration is succesfull</param>
            <param name="messageNode">Message being posted</param>
            <returns>True if parent arbiter accepts, false otherwise</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Receiver.Consume(Microsoft.Ccr.Core.Arbiters.IPortElement)">
            <summary>
            Consume
            </summary>
            <param name="item"></param>
        </member>
        <member name="P:Microsoft.Ccr.Core.Receiver.KeepItemInPort">
            <summary>
            Set to true to generate a NOP task as an iterator can progress while returning
            false from Evaluate, thus keeping an item in the port.
            </summary>
            <remarks>Used for implicit convertion operators of port to Receiver or Choice that are meant
            to progress iterator logic but with no continuation supplied</remarks>
        </member>
        <member name="P:Microsoft.Ccr.Core.Receiver.Arbiter">
            <summary>
            Parent arbiter to consult before consuming a message
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.GatherPrivateReceiver">
            <summary>
            A helper task that uses single item persisted receivers to collect items from multiple
            ports and then accumulate them across collections based on item type. When the supplied count
            is reached it will execute the user task. This essentially a gather operation that works with
            an scatterg operation that used the same PortSet for the response port in all outbound messages
            </summary>
            
        </member>
        <member name="T:Microsoft.Ccr.Core.MultipleItemReceiver">
            <summary>
            Collects N messages from N ports, then executes a task passing a collection with N messages
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.MultipleItemReceiver.#ctor(Microsoft.Ccr.Core.ITask,Microsoft.Ccr.Core.IPortReceive[])">
            <summary>
            Initialization constructor
            </summary>
            <param name="ports">Ports that items will be posted</param>
            <param name="userTask">Task to execute when one message from each port has been received</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.MultipleItemReceiver.PartialClone">
            <summary>
            Creates new instance of receiver with the same initial parameters as current instance
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.MultipleItemReceiver.Execute">
            <summary>
            Activate task by registering receivers to each port
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.MultipleItemReceiver.Evaluate(Microsoft.Ccr.Core.Arbiters.IPortElement,Microsoft.Ccr.Core.ITask@)">
            <summary>
            Not implemented
            </summary>
            <param name="messageNode"></param>
            <param name="deferredTask"></param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.MultipleItemReceiver.Consume(Microsoft.Ccr.Core.Arbiters.IPortElement)">
            <summary>
            Not implemented
            </summary>
            <param name="item"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.MultipleItemReceiver.Cleanup">
            <summary>
            Cleanup
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.MultipleItemReceiver.Cleanup(Microsoft.Ccr.Core.ITask)">
            <summary>
            Cleanup of user task if commit through arbiter hierarchy fails
            </summary>
            <param name="taskToCleanup"></param>
        </member>
        <member name="P:Microsoft.Ccr.Core.MultipleItemReceiver.Arbiter">
            <summary>
            Parent arbiter to consult before consuming a message
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.MultipleItemGather">
            <summary>
            Collects N messages from K ports, then executes a task passing K typed collections of messages
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.MultipleItemGather.#ctor(System.Type[],Microsoft.Ccr.Core.IPortReceive[],System.Int32,Microsoft.Ccr.Core.Handler{System.Collections.ICollection[]})">
            <summary>
            Constructs a helper for gathering results
            </summary>
            <param name="types">Array of discrete types. Must match generic type parameters of ports supplied</param>
            <param name="ports">Ports that items will be posted</param>
            <param name="itemCount">Total number of items received across all ports</param>
            <param name="handler">Handler to execute when total number of messages have been received</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.MultipleItemGather.PartialClone">
            <summary>
            Creates new instance of receiver with the same initial parameters as current instance
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.MultipleItemGather.Execute">
            <summary>
            Activate task by registering receivers to each port
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.MultipleItemGather.Cleanup">
            <summary>
            Cleanup
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.MultipleItemGather.Evaluate(Microsoft.Ccr.Core.Arbiters.IPortElement,Microsoft.Ccr.Core.ITask@)">
            <summary>
            Not supported
            </summary>
            <param name="messageNode">port element</param>
            <param name="deferredTask">task</param>
            <returns>true or false</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.MultipleItemGather.Consume(Microsoft.Ccr.Core.Arbiters.IPortElement)">
            <summary>
            Not supported
            </summary>
            <param name="item"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.MultipleItemGather.Cleanup(Microsoft.Ccr.Core.ITask)">
            <summary>
            invoked by a parent arbiter to return items back to ports if another receiver won arbitration
            </summary>
            <param name="taskToCleanup">Task to use for re-posting arguments back to ports</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.MultipleItemGather.UnrollPartialCommit(System.Collections.ICollection[])">
            <summary>
            Returns any items retrieved back to their respective ports
            </summary>
            <param name="results"></param>
        </member>
        <member name="P:Microsoft.Ccr.Core.MultipleItemGather.Arbiter">
            <summary>
            Parent arbiter to consult before consuming a message
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Receiver`1">
            <summary>
            Strongly typed version of <see cref="T:Microsoft.Ccr.Core.Receiver"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Receiver`1.#ctor(Microsoft.Ccr.Core.IPortReceive,System.Predicate{`0},Microsoft.Ccr.Core.Task{`0})">
            <summary>
            Constructs a SingleItemReceiver
            </summary>
            <param name="port">Port that the receiver will be attached to</param>
            <param name="predicate">Predicate delegate that guards the user delegate with some value based match</param>
            <param name="task">Task instance typed to the same type as the port and with a user handler specified</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Receiver`1.#ctor(System.Boolean,Microsoft.Ccr.Core.IPortReceive,System.Predicate{`0},Microsoft.Ccr.Core.Task{`0})">
            <summary>
            Constructs a SingleItemReceiver
            </summary>
            <param name="persist"></param>
            <param name="port"></param>
            <param name="predicate"></param>
            <param name="task"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Receiver`1.#ctor(System.Boolean,Microsoft.Ccr.Core.IPortReceive,System.Predicate{`0},Microsoft.Ccr.Core.IterativeTask{`0})">
            <summary>
            Constructs a SingleItemReceiver
            </summary>
            <param name="persist"></param>
            <param name="port"></param>
            <param name="predicate"></param>
            <param name="task"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Receiver`1.#ctor(Microsoft.Ccr.Core.IPortReceive,System.Predicate{`0},Microsoft.Ccr.Core.IterativeTask{`0})">
            <summary>
            Constructs a SingleItemReceiver
            </summary>
            <param name="port">Port that the receiver will be attached to</param>
            <param name="predicate">Predicate delegate that guards the user delegate with some value based match</param>
            <param name="task">Task instance typed to the same type as the port and with a user handler specified</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Receiver`1.Evaluate(Microsoft.Ccr.Core.Arbiters.IPortElement,Microsoft.Ccr.Core.ITask@)">
            <summary>
            Invoked in the context Port.Post(). The receiver will consult its parent
            arbiter and if the parent accepts, the receiver will consume the item, 
            and schedule a task with it as an argument
            </summary>
            <param name="deferredTask">Set to a task instance with the user delegate and message if arbitration is succesfull</param>
            <param name="messageNode">Message being posted</param>
            <returns>True if parent arbiter accepts, false otherwise</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.Receiver`1.Predicate">
            <summary>
            Predicate logic for the receiver
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Choice">
            <summary>
            The choice arbiter will arbitrate between N child receivers (branches) and only allow one to
            proceed
            </summary>
            <remarks>
            If the child arbiters/receivers are reissue the choice will always allow them
            to proceed. When the first non-reissue receiver to fire executes however the entire choice context
            will teardown
            </remarks>
        </member>
        <member name="M:Microsoft.Ccr.Core.Choice.ToString">
            <summary>
            Description of the Choice state and children branches
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Choice.#ctor(Microsoft.Ccr.Core.Arbiters.ReceiverTask[])">
            <summary>
            Constructs a Choice arbiter given an array of receivers
            </summary>
            <param name="branches">Receiver tasks that form the choice</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Choice.PartialClone">
            <summary>
            Not supported
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Choice.Execute">
            <summary>
            Invoked by the dispatcher/scheduler to register the choice as a parent arbiter
            on all its receivers
            </summary>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Choice.Cleanup(Microsoft.Ccr.Core.ITask)">
            <summary>
            Clenaup is scheduled when one of the branches wins arbitration and needs
            to schedule the user continuation
            </summary>
            <param name="winner">Task generated by the winning receiver</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Choice.Evaluate(Microsoft.Ccr.Core.Arbiters.ReceiverTask,Microsoft.Ccr.Core.ITask@)">
            <summary>
            Invoked by the child receivers to determine if they can proceed
            </summary>
            <param name="receiver">Child receiver invoking this method</param>
            <param name="deferredTask">Set to null if the receiver calling in lost arbitration. Not modified otherwise</param>
            <returns>true if child receiver one the arbitration. False otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.Choice.TaskQueue">
            <summary>
            Dispatcher queue to use for scheduling any tasks 
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Choice.ArbiterCleanupHandler">
            <summary>
            Set by a top level arbiter so it can execute logic on task completion
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Choice.LinkedIterator">
            <summary>
            Iterator that needs to be processed once current task completes
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Choice.ArbiterState">
            <summary>
            Current state of the choice arbiter.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Choice.Item(System.Int32)">
            <summary>
            Not supported
            </summary>
            <param name="index"></param>
            <returns></returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.Choice.PortElementCount">
            <summary>
            Always zero
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortExtensions">
            <summary>
            Port extension methods for coordination primitive creation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortExtensions.Receive``1(Microsoft.Ccr.Core.Port{``0})">
            <summary>
            Iterator use only. Creates a one time receiver that satisfies the yield operation and leaves the received item in the port
            </summary>
            <typeparam name="T"></typeparam>
            <param name="port">Port instance</param>
            <returns>Receiver instance for yielding execution</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortExtensions.Receive``1(Microsoft.Ccr.Core.Port{``0},Microsoft.Ccr.Core.Handler{``0})">
            <summary>
            Creates a one time receiver
            </summary>
            <typeparam name="T"></typeparam>
            <param name="port"></param>
            <param name="handler">User delegate that executes when there is an item on the port</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortExtensions.Receive``1(Microsoft.Ccr.Core.Port{``0},Microsoft.Ccr.Core.Handler{``0},System.Predicate{``0})">
            <summary>
            Creates a one time receiver
            </summary>
            <typeparam name="T"></typeparam>
            <param name="port"></param>
            <param name="handler">User delegate that executes when there is an item on the port</param>
            <param name="predicate">Predicate that determines if item should be consumed by receiver or ignored</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortExtensions.Join``2(Microsoft.Ccr.Core.Port{``0},Microsoft.Ccr.Core.Port{``1},Microsoft.Ccr.Core.Handler{``0,``1})">
            <summary>
            Creates a one time Join across two ports
            </summary>
            <param name="port"></param>
            <param name="port1"></param>
            <param name="handler">User delegate that executes when there is an item on the port</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortExtensions.Join``3(Microsoft.Ccr.Core.Port{``0},Microsoft.Ccr.Core.Port{``1},Microsoft.Ccr.Core.Port{``2},Microsoft.Ccr.Core.Handler{``0,``1,``2})">
            <summary>
            Creates a one time Join across two ports
            </summary>
            <param name="port"></param>
            <param name="port1"></param>
            <param name="port2"></param>
            <param name="handler">User delegate that executes when there is an item on the port</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortExtensions.Join``1(Microsoft.Ccr.Core.Port{``0},System.Int32,Microsoft.Ccr.Core.VariableArgumentHandler{``0})">
            <summary>
            Creates a one time Join for multiple items from the same port instance
            </summary>
            <typeparam name="T0"></typeparam>
            <param name="port">Port instance to collect items from, in any order</param>
            <param name="itemCount">Number of items</param>
            <param name="handler">User delegates that executes when all items are received</param>
            <returns></returns>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSetExtensions">
            <summary>
            PortSet extension methods for coordination primitive creation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSetExtensions.Choice``2(Microsoft.Ccr.Core.PortSet{``0,``1})">
            <summary>
            Iterator use only. Creates a choice with a one time receiver registered in each Port within the port set, that will post the item back in the port.
            </summary>
            <typeparam name="T0"></typeparam>
            <typeparam name="T1"></typeparam>
            <param name="portSet">PortSet instance to register choice and receivers on</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSetExtensions.Choice``3(Microsoft.Ccr.Core.PortSet{``0,``1,``2})">
            <summary>
            Iterator use only. Creates a choice with a one time receiver registered in each Port within the port set, that will post the item back in the port.
            </summary>
            <param name="portSet">PortSet instance to register choice and receivers on</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSetExtensions.Choice``2(Microsoft.Ccr.Core.PortSet{``0,``1},Microsoft.Ccr.Core.Handler{``0},Microsoft.Ccr.Core.Handler{``1})">
            <summary>
            Creates a choice with two one time receivers, one for each port in the port set.
            </summary>
            <typeparam name="T0"></typeparam>
            <typeparam name="T1"></typeparam>
            <param name="portSet">PortSet instance to register choice and receivers on</param>
            <param name="handler0">Handler that executes if item of type T0 is received first</param>
            <param name="handler1">Handler that executes if item of type T1 is received first</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSetExtensions.Choice``3(Microsoft.Ccr.Core.PortSet{``0,``1,``2},Microsoft.Ccr.Core.Handler{``0},Microsoft.Ccr.Core.Handler{``1},Microsoft.Ccr.Core.Handler{``2})">
            <summary>
            Creates a choice with two one time receivers, one for each port in the port set.
            </summary>
            <typeparam name="T0"></typeparam>
            <typeparam name="T1"></typeparam>
            <typeparam name="T2"></typeparam>
            <param name="portSet">PortSet instance to register choice and receivers on</param>
            <param name="handler0">Handler that executes if item of type T0 is received first</param>
            <param name="handler1">Handler that executes if item of type T1 is received first</param>
            <param name="handler2">Handler that executes if item of type T1 is received first</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSetExtensions.MultipleItemReceive``2(Microsoft.Ccr.Core.PortSet{``0,``1},System.Int32,Microsoft.Ccr.Core.Handler{System.Collections.Generic.ICollection{``0},System.Collections.Generic.ICollection{``1}})">
            <summary>
            Creates a coordination task that collects items from multiple ports in the same PortSet.
            It then accumulates the results in collections based on item type. When the supplied count
            is reached it will execute the user task. 
            </summary>
            <param name="portSet">PortSet instance</param>
            <param name="totalItemCount">Total number of items to receive across all ports in the PortSet instance</param>
            <param name="handler">User delegate</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSetExtensions.Receive``2(Microsoft.Ccr.Core.PortSet{``0,``1},Microsoft.Ccr.Core.Handler{``0})">
            <summary>
            Creates a one time receiver
            </summary>
            <param name="portSet"></param>
            <param name="handler">User delegate that executes when there is an item on the port</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSetExtensions.Receive``2(Microsoft.Ccr.Core.PortSet{``0,``1},Microsoft.Ccr.Core.Handler{``1})">
            <summary>
            Creates a one time receiver
            </summary>
            <param name="portSet"></param>
            <param name="handler">User delegate that executes when there is an item on the port</param>
            <returns></returns>
        </member>
        <member name="T:Microsoft.Ccr.Core.Arbiters.IPortElement">
            <summary>
            Container for port messages
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.IPortElement.Owner">
            <summary>
            Port that owns this element
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.IPortElement.Next">
            <summary>
            Linked list Next pointer
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.IPortElement.Previous">
            <summary>
            Linked list Previous pointer
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.IPortElement.CausalityContext">
            <summary>
            CCR use only. Used for flowing context across tasks
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.IPortElement.Item">
            <summary>
            Message instance
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Arbiters.IPortElement`1">
            <summary>
            Container for typed port messages
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.IPortElement`1.TypedItem">
            <summary>
            Message instance
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Arbiters.PortElement`1">
            <summary>
            Container class for port messages. Generic type is the same as the port type
            this container will be posted to. Ports maintain a queue of these containers
            </summary>
            <typeparam name="T"></typeparam>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiters.PortElement`1.#ctor(`0)">
            <summary>
            Constructs a PortElement
            </summary>
            <param name="item">Item</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Arbiters.PortElement`1.#ctor(`0,Microsoft.Ccr.Core.Port{`0})">
            <summary>
            Constructs a PortElement
            </summary>
            <param name="item">Item</param>
            <param name="owner">Port instance that owns this element</param>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.PortElement`1.Owner">
            <summary>
            Port instance that owns this element
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.PortElement`1.Next">
            <summary>
            Next element 
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.PortElement`1.Previous">
            <summary>
            Previous element
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.PortElement`1.CausalityContext">
            <summary>
            Logical context associated with this element
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.PortElement`1.Item">
            <summary>
            Message instance
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Arbiters.PortElement`1.TypedItem">
            <summary>
            Typed accessor to message instance
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Arbiters.ArbiterTaskState">
            <summary>
            State types for CCR arbiters
            <remarks>Choice, interleave, join are all arbiters than can be in one of these states</remarks>
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.Arbiters.ArbiterTaskState.Created">
            <summary>
            Initial state of an arbiter before its attached to a port or child receivers/arbiters
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.Arbiters.ArbiterTaskState.Active">
            <summary>
            When a port is registered to a port or at least one children arbiter, it becomes active
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.Arbiters.ArbiterTaskState.Done">
            <summary>
            An arbiter reaches the Done state when it will no longer process any more messages and its ready for cleanup
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Arbiters.ReceiverTaskState">
            <summary>
            Receive thunk state
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.Arbiters.ReceiverTaskState.Onetime">
            <summary>
            Onetime receivers will process one message and then unregister
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.Arbiters.ReceiverTaskState.Persistent">
            <summary>
            Persistant receivers consume more than one item and stay registered on the port
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.Arbiters.ReceiverTaskState.CleanedUp">
            <summary>
            A receiver will reach this state if its one time and it processed a message or because its
            parent arbiter decided to clean it up
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Resource1">
            <summary>
              A strongly-typed resource class, for looking up localized strings, etc.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.ResourceManager">
            <summary>
              Returns the cached ResourceManager instance used by this class.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.Culture">
            <summary>
              Overrides the current thread's CurrentUICulture property for all
              resource lookups using this strongly typed resource class.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.ChoiceAlreadyActiveException">
            <summary>
              Looks up a localized string similar to &quot;Choice has already been initialized&quot;.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.ChoiceBranchesCannotBePersisted">
            <summary>
              Looks up a localized string similar to &quot;Receiver tasks in Choice can not be persisted&quot;.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.DispatcherPortTestNotValidInThreadpoolMode">
            <summary>
              Looks up a localized string similar to &quot;Test not valid when dispatcher port is using thread pool&quot;.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.EnqueueTimerNotSupportedForClrThreadPoolDispatcherQueues">
            <summary>
              Looks up a localized string similar to &quot;Not supported on dispatcher queues that use the CLR ThreadPool. Use dispatcherQueue constructed with a CCR dispatcher&quot;.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.ExceptionDuringArbiterCleanup">
            <summary>
              Looks up a localized string similar to &quot;ArbiterCleanup failed during exception handling for failed task&quot;.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.ExceptionDuringCausalityHandling">
            <summary>
              Looks up a localized string similar to n by task&quot;.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.HandleExceptionLog">
            <summary>
              Looks up a localized string similar to &quot;TaskExecutionWorker:HandleException&quot;.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.InterleaveCannotHaveFinalizerException">
            <summary>
              Looks up a localized string similar to  &quot;Interleave can not have a Finalizer&quot;.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.InterleaveInvalidReceiverTaskArgumentForTryDequeuePendingItems">
            <summary>
              Looks up a localized string similar to &quot;Receiver is not associated with this Interleave instance&quot;.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.IteratorsCannotYieldToInterleaveException">
            <summary>
              Looks up a localized string similar to &quot;Iterators can not yield to interleave&quot;.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.IteratorsCannotYieldToReissueException">
            <summary>
              Looks up a localized string similar to &quot;Iterators can not yield to a re-issue (!) receive&quot;.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.JoinReceiverDuplicatePortMessage">
            <summary>
              Looks up a localized string similar to &quot;Duplicate port supplied to multiple-port Join&quot;.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.JoinSinglePortReceiverAtLeastOneItemMessage">
            <summary>
              Looks up a localized string similar to &quot;You must join with at least 1 items&quot;.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.JoinsMustHaveOnePortMinimumException">
            <summary>
              Looks up a localized string similar to &quot;Joins must have at least one port&quot;.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.ReceiveThunkInvalidOperation">
            <summary>
              Looks up a localized string similar to &quot;An Arbiter is already registered for this thunk!&quot;.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.TaskAlreadyHasFinalizer">
            <summary>
              Looks up a localized string similar to &quot;Task instance already has a completion handler&quot;.
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Resource1.TeardownBranchesCannotBePersisted">
            <summary>
              Looks up a localized string similar to &quot;Receiver tasks in teardown group can not be persisted&quot;.
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.DispatcherOptions">
            <summary>
            Dispatcher configuration options
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.DispatcherOptions.None">
            <summary>
            Default options will be used
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.DispatcherOptions.UseBackgroundThreads">
            <summary>
            The Task Execution Worker Threads will be created as background threads, allowing application exit even if they are active
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.DispatcherOptions.UseProcessorAffinity">
            <summary>
            Task Execution Worker Threads will be assigned on an individual core. 
            If number of threads is greater than number of cores, the dispatcher will equally distribute threads per core
            </summary>
            <remarks>Affinity is just a hint to the operating system. There are no strong guarantees that a thread will remain on the assigned core</remarks>
        </member>
        <member name="F:Microsoft.Ccr.Core.DispatcherOptions.SuppressDisposeExceptions">
            <summary>
            Attempting to enqueue or dequeue tasks after Dispose is called on the Dispatcher and its associated queues will silently fail instead of
            throwing exceptions
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.DispatcherOptions.UseHighAccuracyTimerLogic">
            <summary>
            Enablesspecial timer logic that achieves low jitter, high cycle rate timer notifications but with 
            higher context switching cost. Use only if sub 15ms timer intervals are required
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.TaskExecutionPolicy">
            <summary>
            Specifies dispatcher queue task scheduling behavior
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.TaskExecutionPolicy.Unconstrained">
            <summary>
            Default behavior, all tasks are queued with no constraints
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.TaskExecutionPolicy.ConstrainQueueDepthDiscardTasks">
            <summary>
            Queue enforces maximum depth (specified at queue creation) 
            and discards tasks enqueued after the limit is reached
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.TaskExecutionPolicy.ConstrainQueueDepthThrottleExecution">
            <summary>
            Queue enforces maximum depth (specified at queue creation)
            but does not discard anny tasks. It forces the thread posting any tasks after the limit is reached, to
            sleep until the queue depth falls below the limit
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.TaskExecutionPolicy.ConstrainSchedulingRateDiscardTasks">
            <summary>
            Queue enforces the rate of task scheduling specified at queue creation
            and discards tasks enqueued after the current scheduling rate is above the specified rate
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.TaskExecutionPolicy.ConstrainSchedulingRateThrottleExecution">
            <summary>
            Queue enforces the rate of task scheduling specified at queue creation
            and forces the thread posting tasks to sleep until the current rate of task scheduling falls below
            the specified average rate
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.DispatcherQueue">
            <summary>
            Special variant of a typed Port for enqueing and scheduling CCR Tasks
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.DispatcherQueue._taskQueue">
            <summary>
            Queue for ITask implementations thats dont use TaskCommon abstract base class
            </summary>
        </member>
        <member name="F:Microsoft.Ccr.Core.DispatcherQueue._taskCommonListHead">
            <summary>
            Custom (optimized) queue (list head) for ITask implementations that use TaskCommon base class
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueue.#ctor">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueue.#ctor(System.String)">
            <summary>
            Constructs an instance of the dispatcher port using the CLR thread pool for task execution
            </summary>
            <param name="name"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueue.#ctor(System.String,Microsoft.Ccr.Core.Dispatcher)">
            <summary>
            Constructs an instance of the dispatcher port using the specified CCR dispatcher
            </summary>
            <param name="name"></param>
            <param name="dispatcher"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueue.#ctor(System.String,Microsoft.Ccr.Core.Dispatcher,Microsoft.Ccr.Core.TaskExecutionPolicy,System.Int32)">
            <summary>
            Constructs an instance of the dispatcher port using the specified CCR dispatcher
            </summary>
            <param name="name">Friendly name</param>
            <param name="dispatcher">Dispatcher instance for executing tasks</param>
            <param name="policy">Task scheduling policy</param>
            <param name="maximumQueueDepth">Maximum number of pending tasks. 
            Only valid when appropriate policy is specified</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueue.#ctor(System.String,Microsoft.Ccr.Core.Dispatcher,Microsoft.Ccr.Core.TaskExecutionPolicy,System.Double)">
            <summary>
            Constructs an instance of the dispatcher port using the specified CCR dispatcher
            </summary>
            <param name="name">Friendly name</param>
            <param name="dispatcher">Dispatcher instance for executing tasks</param>
            <param name="policy">Task scheduling policy</param>
            <param name="schedulingRate">Average desired scheduling rate, in tasks per second. 
            Only valid when appropriate policy is specified</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueue.#ctor(System.String,Microsoft.Ccr.Core.Dispatcher,Microsoft.Ccr.Core.TaskExecutionPolicy,System.Int32,System.Double)">
            <summary>
            Constructs an instance of the dispatcher port using the specified CCR dispatcher
            </summary>
            <param name="name">Friendly name</param>
            <param name="dispatcher">Dispatcher instance for executing tasks</param>
            <param name="policy">Task scheduling policy</param>
            <param name="maximumQueueDepth">Maximum number of pending tasks. 
            Only used when appropriate policy is specified</param>
            <param name="schedulingRate">Average desired scheduling rate, in tasks per second. 
            Only used when appropriate policy is specified</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueue.EnqueueTimerUsingClrSystemTimers(System.TimeSpan,Microsoft.Ccr.Core.Port{System.DateTime})">
            <summary>
            Enqueues a timer registration that will post a DateTime item on the timerPort
            </summary>
            <param name="timeSpan"></param>
            <param name="timerPort"></param>
            <returns>The System.Timer instance if a timer was instantiated, null if no timer was needed due to short timespan</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueue.EnqueueTimer(System.TimeSpan,Microsoft.Ccr.Core.Port{System.DateTime})">
            <summary>
            Enqueues a timer registration that will post a DateTime item on the timerPort
            </summary>
            <param name="timeSpan"></param>
            <param name="timerPort"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueue.Enqueue(Microsoft.Ccr.Core.ITask)">
            <summary>
            Enqueue ITask instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">Thrown if message type is not derived from ITask</exception>
            <param name="task">ITask instance</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueue.SignalDispatcher">
            <summary>
            Signals the Dispatcher instance associated with this queue, so an available thread executes the recently queued task
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueue.Suspend">
            <summary>
            Suspend scheduling of tasks. Tasks can still be queued
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueue.Resume">
            <summary>
            Resumes execution of tasks, including any tasks queued while in paused state
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueue.TryDequeue(Microsoft.Ccr.Core.ITask@)">
            <summary>
            Atomically removes an ITask instance if the port is non empty
            </summary>
            <param name="task">ITask instance if port is not empty. Null otherwise</param>
            <returns>True if port is not empty</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueue.Dispose">
            <summary>
            Dispose releases resources associated with this instance
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.DispatcherQueue.Dispose(System.Boolean)">
            <summary>
            Implementation of dispose
            </summary>
            <param name="disposing"></param>
        </member>
        <member name="P:Microsoft.Ccr.Core.DispatcherQueue.IsDisposed">
            <summary>
            True if Disposed method has been called (dispose might still be in progress)
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.DispatcherQueue.IsSuspended">
            <summary>
            True if task scheduling is suspended
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.DispatcherQueue.Name">
            <summary>
            Friendly name for consumer of this dispatcher port
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.DispatcherQueue.IsUsingThreadPool">
            <summary>
            Indicates if the CLR thread pool is used for task execution, instead of a CCR Dispatcher
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.DispatcherQueue.Dispatcher">
            <summary>
            Parent dispatcher managing OS threads that execute tasks queued through this instance
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.DispatcherQueue.Count">
            <summary>
            Number of ITask instances currently queued.
            <remarks>The returned value is an estimate and not guaranteed to be accurate.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.DispatcherQueue.ScheduledTaskCount">
            <summary>
            Number of tasks scheduled so far
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.DispatcherQueue.Policy">
            <summary>
            Execution policy
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.DispatcherQueue.MaximumQueueDepth">
            <summary>
            Maximum depth of queued tasks
            </summary>
            <remarks>Valid only when appropriate policy is set</remarks>
        </member>
        <member name="P:Microsoft.Ccr.Core.DispatcherQueue.CurrentSchedulingRate">
            <summary>
            Current rate of tasks being scheduled in tasks/second
            </summary>
            <remarks>Valid only when appropriate execution policy is set</remarks>
        </member>
        <member name="P:Microsoft.Ccr.Core.DispatcherQueue.MaximumSchedulingRate">
            <summary>
            Upper bound on scheduling rate that determines throttling
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.DispatcherQueue.Timescale">
            <summary>
            Factor multiplied with TimeSpan values to compute absolute time duration for all EnqueueTimer calls 
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.DispatcherQueue.ExecutionPolicyNotificationPort">
            <summary>
            Signals execution policy events such as queue limits being exceeded.
            </summary>
            <remarks> 
            Stores discarded tasks when <see cref="T:Microsoft.Ccr.Core.TaskExecutionPolicy"/> is enabled. If policy is not set to discard
            null items will still be queued to signal that throttling is occuring due to limits being exceeded.
            </remarks>
        </member>
        <member name="P:Microsoft.Ccr.Core.DispatcherQueue.ThrottlingSleepInterval">
            <summary>
            Duration of thread sleep when throttling is enforced during an Enqueue operation
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.DispatcherQueue.UnhandledExceptionPort">
            <summary>
            Gets or sets a port that any unhandled exceptions occuring in tasks running in 
            this DispatcherQueue will be sent to.
            </summary>
        </member>
        <member name="E:Microsoft.Ccr.Core.DispatcherQueue.UnhandledException">
            <summary>
            This event is raised when an unhandled exception occurs in tasks running in this 
            DispatcherQueue
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.TaskExecutionWorker.CheckStartupComplete">
            <summary>
            when all the workers associated with same Dispatcher instance are initialized and started
            we signal an event on the parent to indicate startup is complete
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.TaskExecutionWorker.CheckShutdownComplete">
            <summary>
            When all workers have exited their thread entry methods and are processing no items
            we signal a shutdown event on the parent
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.TaskExecutionWorker.IsCriticalException(System.Exception)">
            <summary>
            Is the supplied exception of sufficient severity that it should not be handled?
            </summary>
            <param name="exception">The exception to test</param>
            <returns>True, if this exception should not be handled by the application</returns>
        </member>
        <member name="T:Microsoft.Ccr.Core.CcrServiceBase">
            <summary>
            Base CCR class
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.CcrServiceBase.#ctor">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.CcrServiceBase.#ctor(Microsoft.Ccr.Core.DispatcherQueue)">
            <summary>
            Create instance using a specific dispatcher port.
            </summary>
            <param name="dispatcherQueue"></param>
        </member>
        <member name="M:Microsoft.Ccr.Core.CcrServiceBase.Activate``1(``0[])">
            <summary>
            Submits CCR tasks to the dispatcher port for execution. If the task was a receiver orchestration
            like join or choice, executing it means registering constraints on ports to
            guard the execution of user code
            </summary>
            <typeparam name="T">Task instance</typeparam>
            <param name="tasks">Tasks to execute</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.CcrServiceBase.EmptyHandler``1(``0)">
            <summary>
            An empty handler implementation that can be used in a receiver to 
            handle a message without side effects
            </summary>
            <typeparam name="T">The message type</typeparam>
            <param name="message">The message</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.CcrServiceBase.TimeoutPort(System.Int32)">
            <summary>
            Creates a port to receive a time signal, registers a timeout with the sequencer,
            supplying the private port. 
            </summary>
            <param name="milliseconds">Timeout in milliseconds</param>
            <returns>Port instance registered with sequencer for receiving timeout signal</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.CcrServiceBase.TimeoutPort(System.TimeSpan)">
            <summary>
            Creates a port to receive a time signal, registers a timeout with the sequencer,
            supplying the private port. 
            </summary>
            <param name="ts">Timespan for timeout period</param>
            <returns>Port instance registered with sequencer for receiving timeout signal</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.CcrServiceBase.Spawn(Microsoft.Ccr.Core.Handler)">
            <summary>
            Invoke a message handler asynchronously, supplying any arguments explicitly.
            </summary>
            <param name="handler">The message handler to invoke.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.CcrServiceBase.SpawnIterator(Microsoft.Ccr.Core.IteratorHandler)">
            <summary>
            Invoke an iterator-based message handler asynchronously, supplying any arguments explicitly.
            </summary>
            <param name="handler">The message handler to invoke.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.CcrServiceBase.Spawn``1(``0,Microsoft.Ccr.Core.Handler{``0})">
            <summary>
            Invoke a message handler asynchronously, supplying any arguments explicitly.
            </summary>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <param name="t0">The 0th parameter to the message handler.</param>
            <param name="handler">The message handler to invoke.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.CcrServiceBase.SpawnIterator``1(``0,Microsoft.Ccr.Core.IteratorHandler{``0})">
            <summary>
            Invoke an iterator-based message handler asynchronously, supplying any arguments explicitly.
            </summary>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <param name="t0">The 0th parameter to the message handler.</param>
            <param name="handler">The message handler to invoke.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.CcrServiceBase.Spawn``2(``0,``1,Microsoft.Ccr.Core.Handler{``0,``1})">
            <summary>
            Invoke a message handler asynchronously, supplying any arguments explicitly.
            </summary>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <param name="t0">The 0th parameter to the message handler.</param>
            <typeparam name="T1">The 1th parameter type to the message handler.</typeparam>
            <param name="t1">The 1th parameter to the message handler.</param>
            <param name="handler">The message handler to invoke.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.CcrServiceBase.SpawnIterator``2(``0,``1,Microsoft.Ccr.Core.IteratorHandler{``0,``1})">
            <summary>
            Invoke an iterator-based message handler asynchronously, supplying any arguments explicitly.
            </summary>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <param name="t0">The 0th parameter to the message handler.</param>
            <typeparam name="T1">The 1th parameter type to the message handler.</typeparam>
            <param name="t1">The 1th parameter to the message handler.</param>
            <param name="handler">The message handler to invoke.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.CcrServiceBase.Spawn``3(``0,``1,``2,Microsoft.Ccr.Core.Handler{``0,``1,``2})">
            <summary>
            Invoke a message handler asynchronously, supplying any arguments explicitly.
            </summary>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <param name="t0">The 0th parameter to the message handler.</param>
            <typeparam name="T1">The 1th parameter type to the message handler.</typeparam>
            <param name="t1">The 1th parameter to the message handler.</param>
            <typeparam name="T2">The 2th parameter type to the message handler.</typeparam>
            <param name="t2">The 2th parameter to the message handler.</param>
            <param name="handler">The message handler to invoke.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.CcrServiceBase.SpawnIterator``3(``0,``1,``2,Microsoft.Ccr.Core.IteratorHandler{``0,``1,``2})">
            <summary>
            Invoke an iterator-based message handler asynchronously, supplying any arguments explicitly.
            </summary>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <param name="t0">The 0th parameter to the message handler.</param>
            <typeparam name="T1">The 1th parameter type to the message handler.</typeparam>
            <param name="t1">The 1th parameter to the message handler.</param>
            <typeparam name="T2">The 2th parameter type to the message handler.</typeparam>
            <param name="t2">The 2th parameter to the message handler.</param>
            <param name="handler">The message handler to invoke.</param>
        </member>
        <member name="P:Microsoft.Ccr.Core.CcrServiceBase.TaskQueue">
            <summary>
            Dispatcher port associated with this instance. Used by Activate() calls to schedule tasks
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Handler">
            <summary>
            Closure signature for message handler.
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.IteratorHandler">
            <summary>
            Closure signature for iterator-based message handler.
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Handler`1">
            <summary>
            Closure signature for message handler.
            </summary>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <param name="parameter0">The 0th parameter to the message handler.</param>
        </member>
        <member name="T:Microsoft.Ccr.Core.IteratorHandler`1">
            <summary>
            Closure signature for iterator-based message handler.
            </summary>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <param name="parameter0">The 0th parameter to the message handler.</param>
        </member>
        <member name="T:Microsoft.Ccr.Core.Handler`2">
            <summary>
            Closure signature for message handler.
            </summary>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <param name="parameter0">The 0th parameter to the message handler.</param>
            <typeparam name="T1">The 1th parameter type to the message handler.</typeparam>
            <param name="parameter1">The 1th parameter to the message handler.</param>
        </member>
        <member name="T:Microsoft.Ccr.Core.IteratorHandler`2">
            <summary>
            Closure signature for iterator-based message handler.
            </summary>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <param name="parameter0">The 0th parameter to the message handler.</param>
            <typeparam name="T1">The 1th parameter type to the message handler.</typeparam>
            <param name="parameter1">The 1th parameter to the message handler.</param>
        </member>
        <member name="T:Microsoft.Ccr.Core.Handler`3">
            <summary>
            Closure signature for message handler.
            </summary>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <param name="parameter0">The 0th parameter to the message handler.</param>
            <typeparam name="T1">The 1th parameter type to the message handler.</typeparam>
            <param name="parameter1">The 1th parameter to the message handler.</param>
            <typeparam name="T2">The 2th parameter type to the message handler.</typeparam>
            <param name="parameter2">The 2th parameter to the message handler.</param>
        </member>
        <member name="T:Microsoft.Ccr.Core.IteratorHandler`3">
            <summary>
            Closure signature for iterator-based message handler.
            </summary>
            <typeparam name="T0">The 0th parameter type to the message handler.</typeparam>
            <param name="parameter0">The 0th parameter to the message handler.</param>
            <typeparam name="T1">The 1th parameter type to the message handler.</typeparam>
            <param name="parameter1">The 1th parameter to the message handler.</param>
            <typeparam name="T2">The 2th parameter type to the message handler.</typeparam>
            <param name="parameter2">The 2th parameter to the message handler.</param>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`3">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`3.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`3.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`3.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`3.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`3.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`3.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`3.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`3.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`3.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`3.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2})~`0">
            <summary>
            Invoke the Test method to extract an item of this type
            </summary>
            <param name="port"></param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`3.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2})~`1">
            <summary>
            Invoke the Test method to extract an item of this type
            </summary>
            <param name="port"></param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`3.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2})~`2">
            <summary>
            Invoke the Test method to extract an item of this type
            </summary>
            <param name="port"></param>
            <returns></returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`3.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`3.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`3.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`4">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`4.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`4.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`4.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`4.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`4.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`4.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`4.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`4.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`4.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`4.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`4.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`4.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`4.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`4.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`4.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`5">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`5.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`5.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`5.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3},Microsoft.Ccr.Core.Port{`4})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`5.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`5.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`5.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`5.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`5.Post(`4)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`5.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`5.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`5.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`5.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`5.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4})~Microsoft.Ccr.Core.Port{`4}">
            <summary>
            Convert to the 4th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`5.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`5.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`5.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`5.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`5.P4">
            <summary>
            Returns the port 4th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`6">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`6.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`6.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`6.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3},Microsoft.Ccr.Core.Port{`4},Microsoft.Ccr.Core.Port{`5})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`6.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`6.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`6.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`6.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`6.Post(`4)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`6.Post(`5)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`6.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`6.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`6.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`6.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`6.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5})~Microsoft.Ccr.Core.Port{`4}">
            <summary>
            Convert to the 4th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`6.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5})~Microsoft.Ccr.Core.Port{`5}">
            <summary>
            Convert to the 5th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`6.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`6.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`6.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`6.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`6.P4">
            <summary>
            Returns the port 4th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`6.P5">
            <summary>
            Returns the port 5th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`7">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3},Microsoft.Ccr.Core.Port{`4},Microsoft.Ccr.Core.Port{`5},Microsoft.Ccr.Core.Port{`6})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.Post(`4)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.Post(`5)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.Post(`6)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6})~Microsoft.Ccr.Core.Port{`4}">
            <summary>
            Convert to the 4th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6})~Microsoft.Ccr.Core.Port{`5}">
            <summary>
            Convert to the 5th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`7.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6})~Microsoft.Ccr.Core.Port{`6}">
            <summary>
            Convert to the 6th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`7.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`7.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`7.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`7.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`7.P4">
            <summary>
            Returns the port 4th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`7.P5">
            <summary>
            Returns the port 5th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`7.P6">
            <summary>
            Returns the port 6th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`8">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3},Microsoft.Ccr.Core.Port{`4},Microsoft.Ccr.Core.Port{`5},Microsoft.Ccr.Core.Port{`6},Microsoft.Ccr.Core.Port{`7})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.Post(`4)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.Post(`5)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.Post(`6)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.Post(`7)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7})~Microsoft.Ccr.Core.Port{`4}">
            <summary>
            Convert to the 4th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7})~Microsoft.Ccr.Core.Port{`5}">
            <summary>
            Convert to the 5th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7})~Microsoft.Ccr.Core.Port{`6}">
            <summary>
            Convert to the 6th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`8.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7})~Microsoft.Ccr.Core.Port{`7}">
            <summary>
            Convert to the 7th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`8.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`8.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`8.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`8.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`8.P4">
            <summary>
            Returns the port 4th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`8.P5">
            <summary>
            Returns the port 5th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`8.P6">
            <summary>
            Returns the port 6th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`8.P7">
            <summary>
            Returns the port 7th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`9">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3},Microsoft.Ccr.Core.Port{`4},Microsoft.Ccr.Core.Port{`5},Microsoft.Ccr.Core.Port{`6},Microsoft.Ccr.Core.Port{`7},Microsoft.Ccr.Core.Port{`8})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.Post(`4)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.Post(`5)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.Post(`6)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.Post(`7)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.Post(`8)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8})~Microsoft.Ccr.Core.Port{`4}">
            <summary>
            Convert to the 4th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8})~Microsoft.Ccr.Core.Port{`5}">
            <summary>
            Convert to the 5th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8})~Microsoft.Ccr.Core.Port{`6}">
            <summary>
            Convert to the 6th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8})~Microsoft.Ccr.Core.Port{`7}">
            <summary>
            Convert to the 7th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`9.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8})~Microsoft.Ccr.Core.Port{`8}">
            <summary>
            Convert to the 8th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`9.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`9.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`9.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`9.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`9.P4">
            <summary>
            Returns the port 4th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`9.P5">
            <summary>
            Returns the port 5th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`9.P6">
            <summary>
            Returns the port 6th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`9.P7">
            <summary>
            Returns the port 7th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`9.P8">
            <summary>
            Returns the port 8th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`10">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3},Microsoft.Ccr.Core.Port{`4},Microsoft.Ccr.Core.Port{`5},Microsoft.Ccr.Core.Port{`6},Microsoft.Ccr.Core.Port{`7},Microsoft.Ccr.Core.Port{`8},Microsoft.Ccr.Core.Port{`9})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.Post(`4)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.Post(`5)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.Post(`6)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.Post(`7)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.Post(`8)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.Post(`9)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9})~Microsoft.Ccr.Core.Port{`4}">
            <summary>
            Convert to the 4th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9})~Microsoft.Ccr.Core.Port{`5}">
            <summary>
            Convert to the 5th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9})~Microsoft.Ccr.Core.Port{`6}">
            <summary>
            Convert to the 6th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9})~Microsoft.Ccr.Core.Port{`7}">
            <summary>
            Convert to the 7th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9})~Microsoft.Ccr.Core.Port{`8}">
            <summary>
            Convert to the 8th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`10.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9})~Microsoft.Ccr.Core.Port{`9}">
            <summary>
            Convert to the 9th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`10.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`10.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`10.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`10.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`10.P4">
            <summary>
            Returns the port 4th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`10.P5">
            <summary>
            Returns the port 5th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`10.P6">
            <summary>
            Returns the port 6th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`10.P7">
            <summary>
            Returns the port 7th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`10.P8">
            <summary>
            Returns the port 8th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`10.P9">
            <summary>
            Returns the port 9th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`11">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3},Microsoft.Ccr.Core.Port{`4},Microsoft.Ccr.Core.Port{`5},Microsoft.Ccr.Core.Port{`6},Microsoft.Ccr.Core.Port{`7},Microsoft.Ccr.Core.Port{`8},Microsoft.Ccr.Core.Port{`9},Microsoft.Ccr.Core.Port{`10})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.Post(`4)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.Post(`5)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.Post(`6)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.Post(`7)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.Post(`8)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.Post(`9)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.Post(`10)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10})~Microsoft.Ccr.Core.Port{`4}">
            <summary>
            Convert to the 4th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10})~Microsoft.Ccr.Core.Port{`5}">
            <summary>
            Convert to the 5th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10})~Microsoft.Ccr.Core.Port{`6}">
            <summary>
            Convert to the 6th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10})~Microsoft.Ccr.Core.Port{`7}">
            <summary>
            Convert to the 7th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10})~Microsoft.Ccr.Core.Port{`8}">
            <summary>
            Convert to the 8th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10})~Microsoft.Ccr.Core.Port{`9}">
            <summary>
            Convert to the 9th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`11.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10})~Microsoft.Ccr.Core.Port{`10}">
            <summary>
            Convert to the 10th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`11.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`11.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`11.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`11.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`11.P4">
            <summary>
            Returns the port 4th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`11.P5">
            <summary>
            Returns the port 5th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`11.P6">
            <summary>
            Returns the port 6th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`11.P7">
            <summary>
            Returns the port 7th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`11.P8">
            <summary>
            Returns the port 8th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`11.P9">
            <summary>
            Returns the port 9th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`11.P10">
            <summary>
            Returns the port 10th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`12">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3},Microsoft.Ccr.Core.Port{`4},Microsoft.Ccr.Core.Port{`5},Microsoft.Ccr.Core.Port{`6},Microsoft.Ccr.Core.Port{`7},Microsoft.Ccr.Core.Port{`8},Microsoft.Ccr.Core.Port{`9},Microsoft.Ccr.Core.Port{`10},Microsoft.Ccr.Core.Port{`11})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.Post(`4)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.Post(`5)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.Post(`6)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.Post(`7)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.Post(`8)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.Post(`9)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.Post(`10)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.Post(`11)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11})~Microsoft.Ccr.Core.Port{`4}">
            <summary>
            Convert to the 4th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11})~Microsoft.Ccr.Core.Port{`5}">
            <summary>
            Convert to the 5th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11})~Microsoft.Ccr.Core.Port{`6}">
            <summary>
            Convert to the 6th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11})~Microsoft.Ccr.Core.Port{`7}">
            <summary>
            Convert to the 7th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11})~Microsoft.Ccr.Core.Port{`8}">
            <summary>
            Convert to the 8th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11})~Microsoft.Ccr.Core.Port{`9}">
            <summary>
            Convert to the 9th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11})~Microsoft.Ccr.Core.Port{`10}">
            <summary>
            Convert to the 10th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`12.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11})~Microsoft.Ccr.Core.Port{`11}">
            <summary>
            Convert to the 11th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`12.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`12.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`12.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`12.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`12.P4">
            <summary>
            Returns the port 4th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`12.P5">
            <summary>
            Returns the port 5th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`12.P6">
            <summary>
            Returns the port 6th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`12.P7">
            <summary>
            Returns the port 7th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`12.P8">
            <summary>
            Returns the port 8th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`12.P9">
            <summary>
            Returns the port 9th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`12.P10">
            <summary>
            Returns the port 10th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`12.P11">
            <summary>
            Returns the port 11th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`13">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3},Microsoft.Ccr.Core.Port{`4},Microsoft.Ccr.Core.Port{`5},Microsoft.Ccr.Core.Port{`6},Microsoft.Ccr.Core.Port{`7},Microsoft.Ccr.Core.Port{`8},Microsoft.Ccr.Core.Port{`9},Microsoft.Ccr.Core.Port{`10},Microsoft.Ccr.Core.Port{`11},Microsoft.Ccr.Core.Port{`12})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.Post(`4)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.Post(`5)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.Post(`6)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.Post(`7)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.Post(`8)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.Post(`9)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.Post(`10)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.Post(`11)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.Post(`12)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12})~Microsoft.Ccr.Core.Port{`4}">
            <summary>
            Convert to the 4th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12})~Microsoft.Ccr.Core.Port{`5}">
            <summary>
            Convert to the 5th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12})~Microsoft.Ccr.Core.Port{`6}">
            <summary>
            Convert to the 6th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12})~Microsoft.Ccr.Core.Port{`7}">
            <summary>
            Convert to the 7th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12})~Microsoft.Ccr.Core.Port{`8}">
            <summary>
            Convert to the 8th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12})~Microsoft.Ccr.Core.Port{`9}">
            <summary>
            Convert to the 9th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12})~Microsoft.Ccr.Core.Port{`10}">
            <summary>
            Convert to the 10th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12})~Microsoft.Ccr.Core.Port{`11}">
            <summary>
            Convert to the 11th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`13.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12})~Microsoft.Ccr.Core.Port{`12}">
            <summary>
            Convert to the 12th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`13.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`13.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`13.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`13.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`13.P4">
            <summary>
            Returns the port 4th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`13.P5">
            <summary>
            Returns the port 5th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`13.P6">
            <summary>
            Returns the port 6th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`13.P7">
            <summary>
            Returns the port 7th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`13.P8">
            <summary>
            Returns the port 8th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`13.P9">
            <summary>
            Returns the port 9th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`13.P10">
            <summary>
            Returns the port 10th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`13.P11">
            <summary>
            Returns the port 11th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`13.P12">
            <summary>
            Returns the port 12th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`14">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3},Microsoft.Ccr.Core.Port{`4},Microsoft.Ccr.Core.Port{`5},Microsoft.Ccr.Core.Port{`6},Microsoft.Ccr.Core.Port{`7},Microsoft.Ccr.Core.Port{`8},Microsoft.Ccr.Core.Port{`9},Microsoft.Ccr.Core.Port{`10},Microsoft.Ccr.Core.Port{`11},Microsoft.Ccr.Core.Port{`12},Microsoft.Ccr.Core.Port{`13})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.Post(`4)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.Post(`5)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.Post(`6)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.Post(`7)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.Post(`8)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.Post(`9)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.Post(`10)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.Post(`11)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.Post(`12)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.Post(`13)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13})~Microsoft.Ccr.Core.Port{`4}">
            <summary>
            Convert to the 4th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13})~Microsoft.Ccr.Core.Port{`5}">
            <summary>
            Convert to the 5th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13})~Microsoft.Ccr.Core.Port{`6}">
            <summary>
            Convert to the 6th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13})~Microsoft.Ccr.Core.Port{`7}">
            <summary>
            Convert to the 7th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13})~Microsoft.Ccr.Core.Port{`8}">
            <summary>
            Convert to the 8th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13})~Microsoft.Ccr.Core.Port{`9}">
            <summary>
            Convert to the 9th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13})~Microsoft.Ccr.Core.Port{`10}">
            <summary>
            Convert to the 10th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13})~Microsoft.Ccr.Core.Port{`11}">
            <summary>
            Convert to the 11th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13})~Microsoft.Ccr.Core.Port{`12}">
            <summary>
            Convert to the 12th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`14.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13})~Microsoft.Ccr.Core.Port{`13}">
            <summary>
            Convert to the 13th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`14.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`14.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`14.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`14.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`14.P4">
            <summary>
            Returns the port 4th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`14.P5">
            <summary>
            Returns the port 5th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`14.P6">
            <summary>
            Returns the port 6th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`14.P7">
            <summary>
            Returns the port 7th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`14.P8">
            <summary>
            Returns the port 8th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`14.P9">
            <summary>
            Returns the port 9th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`14.P10">
            <summary>
            Returns the port 10th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`14.P11">
            <summary>
            Returns the port 11th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`14.P12">
            <summary>
            Returns the port 12th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`14.P13">
            <summary>
            Returns the port 13th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`15">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3},Microsoft.Ccr.Core.Port{`4},Microsoft.Ccr.Core.Port{`5},Microsoft.Ccr.Core.Port{`6},Microsoft.Ccr.Core.Port{`7},Microsoft.Ccr.Core.Port{`8},Microsoft.Ccr.Core.Port{`9},Microsoft.Ccr.Core.Port{`10},Microsoft.Ccr.Core.Port{`11},Microsoft.Ccr.Core.Port{`12},Microsoft.Ccr.Core.Port{`13},Microsoft.Ccr.Core.Port{`14})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.Post(`4)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.Post(`5)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.Post(`6)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.Post(`7)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.Post(`8)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.Post(`9)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.Post(`10)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.Post(`11)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.Post(`12)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.Post(`13)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.Post(`14)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14})~Microsoft.Ccr.Core.Port{`4}">
            <summary>
            Convert to the 4th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14})~Microsoft.Ccr.Core.Port{`5}">
            <summary>
            Convert to the 5th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14})~Microsoft.Ccr.Core.Port{`6}">
            <summary>
            Convert to the 6th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14})~Microsoft.Ccr.Core.Port{`7}">
            <summary>
            Convert to the 7th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14})~Microsoft.Ccr.Core.Port{`8}">
            <summary>
            Convert to the 8th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14})~Microsoft.Ccr.Core.Port{`9}">
            <summary>
            Convert to the 9th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14})~Microsoft.Ccr.Core.Port{`10}">
            <summary>
            Convert to the 10th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14})~Microsoft.Ccr.Core.Port{`11}">
            <summary>
            Convert to the 11th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14})~Microsoft.Ccr.Core.Port{`12}">
            <summary>
            Convert to the 12th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14})~Microsoft.Ccr.Core.Port{`13}">
            <summary>
            Convert to the 13th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`15.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14})~Microsoft.Ccr.Core.Port{`14}">
            <summary>
            Convert to the 14th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`15.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`15.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`15.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`15.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`15.P4">
            <summary>
            Returns the port 4th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`15.P5">
            <summary>
            Returns the port 5th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`15.P6">
            <summary>
            Returns the port 6th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`15.P7">
            <summary>
            Returns the port 7th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`15.P8">
            <summary>
            Returns the port 8th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`15.P9">
            <summary>
            Returns the port 9th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`15.P10">
            <summary>
            Returns the port 10th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`15.P11">
            <summary>
            Returns the port 11th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`15.P12">
            <summary>
            Returns the port 12th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`15.P13">
            <summary>
            Returns the port 13th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`15.P14">
            <summary>
            Returns the port 14th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`16">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3},Microsoft.Ccr.Core.Port{`4},Microsoft.Ccr.Core.Port{`5},Microsoft.Ccr.Core.Port{`6},Microsoft.Ccr.Core.Port{`7},Microsoft.Ccr.Core.Port{`8},Microsoft.Ccr.Core.Port{`9},Microsoft.Ccr.Core.Port{`10},Microsoft.Ccr.Core.Port{`11},Microsoft.Ccr.Core.Port{`12},Microsoft.Ccr.Core.Port{`13},Microsoft.Ccr.Core.Port{`14},Microsoft.Ccr.Core.Port{`15})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.Post(`4)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.Post(`5)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.Post(`6)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.Post(`7)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.Post(`8)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.Post(`9)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.Post(`10)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.Post(`11)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.Post(`12)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.Post(`13)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.Post(`14)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.Post(`15)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15})~Microsoft.Ccr.Core.Port{`4}">
            <summary>
            Convert to the 4th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15})~Microsoft.Ccr.Core.Port{`5}">
            <summary>
            Convert to the 5th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15})~Microsoft.Ccr.Core.Port{`6}">
            <summary>
            Convert to the 6th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15})~Microsoft.Ccr.Core.Port{`7}">
            <summary>
            Convert to the 7th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15})~Microsoft.Ccr.Core.Port{`8}">
            <summary>
            Convert to the 8th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15})~Microsoft.Ccr.Core.Port{`9}">
            <summary>
            Convert to the 9th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15})~Microsoft.Ccr.Core.Port{`10}">
            <summary>
            Convert to the 10th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15})~Microsoft.Ccr.Core.Port{`11}">
            <summary>
            Convert to the 11th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15})~Microsoft.Ccr.Core.Port{`12}">
            <summary>
            Convert to the 12th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15})~Microsoft.Ccr.Core.Port{`13}">
            <summary>
            Convert to the 13th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15})~Microsoft.Ccr.Core.Port{`14}">
            <summary>
            Convert to the 14th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`16.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15})~Microsoft.Ccr.Core.Port{`15}">
            <summary>
            Convert to the 15th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`16.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`16.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`16.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`16.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`16.P4">
            <summary>
            Returns the port 4th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`16.P5">
            <summary>
            Returns the port 5th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`16.P6">
            <summary>
            Returns the port 6th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`16.P7">
            <summary>
            Returns the port 7th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`16.P8">
            <summary>
            Returns the port 8th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`16.P9">
            <summary>
            Returns the port 9th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`16.P10">
            <summary>
            Returns the port 10th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`16.P11">
            <summary>
            Returns the port 11th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`16.P12">
            <summary>
            Returns the port 12th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`16.P13">
            <summary>
            Returns the port 13th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`16.P14">
            <summary>
            Returns the port 14th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`16.P15">
            <summary>
            Returns the port 15th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`17">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3},Microsoft.Ccr.Core.Port{`4},Microsoft.Ccr.Core.Port{`5},Microsoft.Ccr.Core.Port{`6},Microsoft.Ccr.Core.Port{`7},Microsoft.Ccr.Core.Port{`8},Microsoft.Ccr.Core.Port{`9},Microsoft.Ccr.Core.Port{`10},Microsoft.Ccr.Core.Port{`11},Microsoft.Ccr.Core.Port{`12},Microsoft.Ccr.Core.Port{`13},Microsoft.Ccr.Core.Port{`14},Microsoft.Ccr.Core.Port{`15},Microsoft.Ccr.Core.Port{`16})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`4)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`5)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`6)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`7)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`8)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`9)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`10)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`11)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`12)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`13)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`14)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`15)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.Post(`16)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`4}">
            <summary>
            Convert to the 4th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`5}">
            <summary>
            Convert to the 5th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`6}">
            <summary>
            Convert to the 6th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`7}">
            <summary>
            Convert to the 7th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`8}">
            <summary>
            Convert to the 8th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`9}">
            <summary>
            Convert to the 9th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`10}">
            <summary>
            Convert to the 10th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`11}">
            <summary>
            Convert to the 11th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`12}">
            <summary>
            Convert to the 12th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`13}">
            <summary>
            Convert to the 13th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`14}">
            <summary>
            Convert to the 14th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`15}">
            <summary>
            Convert to the 15th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`17.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16})~Microsoft.Ccr.Core.Port{`16}">
            <summary>
            Convert to the 16th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P4">
            <summary>
            Returns the port 4th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P5">
            <summary>
            Returns the port 5th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P6">
            <summary>
            Returns the port 6th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P7">
            <summary>
            Returns the port 7th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P8">
            <summary>
            Returns the port 8th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P9">
            <summary>
            Returns the port 9th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P10">
            <summary>
            Returns the port 10th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P11">
            <summary>
            Returns the port 11th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P12">
            <summary>
            Returns the port 12th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P13">
            <summary>
            Returns the port 13th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P14">
            <summary>
            Returns the port 14th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P15">
            <summary>
            Returns the port 15th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`17.P16">
            <summary>
            Returns the port 16th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`18">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3},Microsoft.Ccr.Core.Port{`4},Microsoft.Ccr.Core.Port{`5},Microsoft.Ccr.Core.Port{`6},Microsoft.Ccr.Core.Port{`7},Microsoft.Ccr.Core.Port{`8},Microsoft.Ccr.Core.Port{`9},Microsoft.Ccr.Core.Port{`10},Microsoft.Ccr.Core.Port{`11},Microsoft.Ccr.Core.Port{`12},Microsoft.Ccr.Core.Port{`13},Microsoft.Ccr.Core.Port{`14},Microsoft.Ccr.Core.Port{`15},Microsoft.Ccr.Core.Port{`16},Microsoft.Ccr.Core.Port{`17})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`4)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`5)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`6)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`7)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`8)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`9)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`10)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`11)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`12)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`13)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`14)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`15)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`16)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.Post(`17)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`4}">
            <summary>
            Convert to the 4th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`5}">
            <summary>
            Convert to the 5th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`6}">
            <summary>
            Convert to the 6th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`7}">
            <summary>
            Convert to the 7th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`8}">
            <summary>
            Convert to the 8th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`9}">
            <summary>
            Convert to the 9th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`10}">
            <summary>
            Convert to the 10th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`11}">
            <summary>
            Convert to the 11th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`12}">
            <summary>
            Convert to the 12th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`13}">
            <summary>
            Convert to the 13th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`14}">
            <summary>
            Convert to the 14th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`15}">
            <summary>
            Convert to the 15th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`16}">
            <summary>
            Convert to the 16th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`18.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17})~Microsoft.Ccr.Core.Port{`17}">
            <summary>
            Convert to the 17th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P4">
            <summary>
            Returns the port 4th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P5">
            <summary>
            Returns the port 5th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P6">
            <summary>
            Returns the port 6th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P7">
            <summary>
            Returns the port 7th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P8">
            <summary>
            Returns the port 8th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P9">
            <summary>
            Returns the port 9th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P10">
            <summary>
            Returns the port 10th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P11">
            <summary>
            Returns the port 11th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P12">
            <summary>
            Returns the port 12th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P13">
            <summary>
            Returns the port 13th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P14">
            <summary>
            Returns the port 14th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P15">
            <summary>
            Returns the port 15th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P16">
            <summary>
            Returns the port 16th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`18.P17">
            <summary>
            Returns the port 17th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`19">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3},Microsoft.Ccr.Core.Port{`4},Microsoft.Ccr.Core.Port{`5},Microsoft.Ccr.Core.Port{`6},Microsoft.Ccr.Core.Port{`7},Microsoft.Ccr.Core.Port{`8},Microsoft.Ccr.Core.Port{`9},Microsoft.Ccr.Core.Port{`10},Microsoft.Ccr.Core.Port{`11},Microsoft.Ccr.Core.Port{`12},Microsoft.Ccr.Core.Port{`13},Microsoft.Ccr.Core.Port{`14},Microsoft.Ccr.Core.Port{`15},Microsoft.Ccr.Core.Port{`16},Microsoft.Ccr.Core.Port{`17},Microsoft.Ccr.Core.Port{`18})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`4)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`5)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`6)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`7)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`8)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`9)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`10)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`11)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`12)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`13)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`14)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`15)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`16)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`17)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.Post(`18)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`4}">
            <summary>
            Convert to the 4th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`5}">
            <summary>
            Convert to the 5th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`6}">
            <summary>
            Convert to the 6th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`7}">
            <summary>
            Convert to the 7th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`8}">
            <summary>
            Convert to the 8th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`9}">
            <summary>
            Convert to the 9th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`10}">
            <summary>
            Convert to the 10th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`11}">
            <summary>
            Convert to the 11th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`12}">
            <summary>
            Convert to the 12th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`13}">
            <summary>
            Convert to the 13th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`14}">
            <summary>
            Convert to the 14th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`15}">
            <summary>
            Convert to the 15th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`16}">
            <summary>
            Convert to the 16th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`17}">
            <summary>
            Convert to the 17th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`19.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18})~Microsoft.Ccr.Core.Port{`18}">
            <summary>
            Convert to the 18th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P4">
            <summary>
            Returns the port 4th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P5">
            <summary>
            Returns the port 5th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P6">
            <summary>
            Returns the port 6th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P7">
            <summary>
            Returns the port 7th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P8">
            <summary>
            Returns the port 8th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P9">
            <summary>
            Returns the port 9th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P10">
            <summary>
            Returns the port 10th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P11">
            <summary>
            Returns the port 11th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P12">
            <summary>
            Returns the port 12th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P13">
            <summary>
            Returns the port 13th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P14">
            <summary>
            Returns the port 14th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P15">
            <summary>
            Returns the port 15th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P16">
            <summary>
            Returns the port 16th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P17">
            <summary>
            Returns the port 17th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`19.P18">
            <summary>
            Returns the port 18th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.PortSet`20">
            <summary>
            Multiple Queue Port composed out of multiple Port&lt;T&gt; instances, one for each type
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            <remarks>For each generic type argument T, an instance of Port&lt;T&gt; is used to store messages of that type
            Each Port&lt;T&gt; instance is independent of the others and there are non ordering guarantees across ports under the same
            multiple port wrapper. To get access to the individual ports use the P0,P1,...,PN accessors
            </remarks>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.#ctor">
            <summary>
            Constructs a PortSet using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.#ctor(Microsoft.Ccr.Core.Arbiters.PortSetMode)">
            <summary>
            Constructs a PortSet using the specified mode of operation
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.#ctor(Microsoft.Ccr.Core.Port{`0},Microsoft.Ccr.Core.Port{`1},Microsoft.Ccr.Core.Port{`2},Microsoft.Ccr.Core.Port{`3},Microsoft.Ccr.Core.Port{`4},Microsoft.Ccr.Core.Port{`5},Microsoft.Ccr.Core.Port{`6},Microsoft.Ccr.Core.Port{`7},Microsoft.Ccr.Core.Port{`8},Microsoft.Ccr.Core.Port{`9},Microsoft.Ccr.Core.Port{`10},Microsoft.Ccr.Core.Port{`11},Microsoft.Ccr.Core.Port{`12},Microsoft.Ccr.Core.Port{`13},Microsoft.Ccr.Core.Port{`14},Microsoft.Ccr.Core.Port{`15},Microsoft.Ccr.Core.Port{`16},Microsoft.Ccr.Core.Port{`17},Microsoft.Ccr.Core.Port{`18},Microsoft.Ccr.Core.Port{`19})">
            <summary>
            Constructs a Multiple Queue Port using individual Port&lt;T&gt; instances
            <seealso cref="T:Microsoft.Ccr.Core.Port`1"/>
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`0)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`1)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`2)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`3)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`4)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`5)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`6)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`7)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`8)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`9)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`10)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`11)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`12)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`13)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`14)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`15)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`16)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`17)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`18)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.Post(`19)">
            <summary>
            Enqueues a message instance
            </summary>
            <exception cref="T:Microsoft.Ccr.Core.PortNotFoundException">
            Thrown if the message type is not compatible with the port
            </exception>
            <param name="item">Object instance to enqueue</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`0}">
            <summary>
            Convert to the 0th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`1}">
            <summary>
            Convert to the 1th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`2}">
            <summary>
            Convert to the 2th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`3}">
            <summary>
            Convert to the 3th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`4}">
            <summary>
            Convert to the 4th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`5}">
            <summary>
            Convert to the 5th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`6}">
            <summary>
            Convert to the 6th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`7}">
            <summary>
            Convert to the 7th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`8}">
            <summary>
            Convert to the 8th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`9}">
            <summary>
            Convert to the 9th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`10}">
            <summary>
            Convert to the 10th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`11}">
            <summary>
            Convert to the 11th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`12}">
            <summary>
            Convert to the 12th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`13}">
            <summary>
            Convert to the 13th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`14}">
            <summary>
            Convert to the 14th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`15}">
            <summary>
            Convert to the 15th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`16}">
            <summary>
            Convert to the 16th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`17}">
            <summary>
            Convert to the 17th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`18}">
            <summary>
            Convert to the 18th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.PortSet`20.op_Implicit(Microsoft.Ccr.Core.PortSet{`0,`1,`2,`3,`4,`5,`6,`7,`8,`9,`10,`11,`12,`13,`14,`15,`16,`17,`18,`19})~Microsoft.Ccr.Core.Port{`19}">
            <summary>
            Convert to the 19th PortSet&lt;T&gt; instance.
            </summary>
            <param name="port">PortSet to convert.</param>
            <returns>Null if <paramref name="port"/> was null; the instance otherwise.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P0">
            <summary>
            Returns the port 0th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P1">
            <summary>
            Returns the port 1th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P2">
            <summary>
            Returns the port 2th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P3">
            <summary>
            Returns the port 3th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P4">
            <summary>
            Returns the port 4th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P5">
            <summary>
            Returns the port 5th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P6">
            <summary>
            Returns the port 6th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P7">
            <summary>
            Returns the port 7th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P8">
            <summary>
            Returns the port 8th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P9">
            <summary>
            Returns the port 9th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P10">
            <summary>
            Returns the port 10th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P11">
            <summary>
            Returns the port 11th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P12">
            <summary>
            Returns the port 12th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P13">
            <summary>
            Returns the port 13th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P14">
            <summary>
            Returns the port 14th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P15">
            <summary>
            Returns the port 15th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P16">
            <summary>
            Returns the port 16th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P17">
            <summary>
            Returns the port 17th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P18">
            <summary>
            Returns the port 18th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.PortSet`20.P19">
            <summary>
            Returns the port 19th port in this collection.
            <remarks>Index is 0-based.</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.IterativeTask`1">
            <summary>
            Container for iterator handlers and their arguments
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask`1.#ctor(Microsoft.Ccr.Core.IteratorHandler{`0})">
            <summary>
            Constructs a typed task instance associated with an iterator delegate
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask`1.PartialClone">
            <summary>
            Shallow clone of the task instance
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask`1.#ctor(`0,Microsoft.Ccr.Core.IteratorHandler{`0})">
            <summary>
            Constructs a typed task instance associated with an iterator delegate given some arguments
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask`1.ToString">
            <summary>
            Human readable description of the handler associated with the task
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask`1.Execute">
            <summary>
            Invoked by the dispatcher to execute the Handler associated with the task
            </summary> 
        </member>
        <member name="P:Microsoft.Ccr.Core.IterativeTask`1.Item(System.Int32)">
            <summary>
            Indexer for arguments associated with the task
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.IterativeTask`1.PortElementCount">
            <summary>
            Number of valid arguments associated with this task
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Task`1">
            <summary>
            Container for typed, non-iterator handlers and their arguments
            </summary> 
        </member>
        <member name="F:Microsoft.Ccr.Core.Task`1.Param0">
            <summary>
            Typed parameter passed to user delegate on task execution
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.Task`1.#ctor(Microsoft.Ccr.Core.Handler{`0})">
            <summary>
            Constructs a typed task instance associated with a delegate
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.Task`1.ToString">
            <summary>
            Human readable description of the handler associated with the task
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.Task`1.PartialClone">
            <summary>
            Shallow clone of this task instance
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Task`1.#ctor(`0,Microsoft.Ccr.Core.Handler{`0})">
            <summary>
            Constructs a typed task instance associated with a delegate given some arguments
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.Task`1.Execute">
            <summary>
            Invoked by the dispatcher to execute the Handler associated with the task
            </summary> 
        </member>
        <member name="P:Microsoft.Ccr.Core.Task`1.Item(System.Int32)">
            <summary>
            Indexer for arguments associated with the task
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Task`1.PortElementCount">
            <summary>
            Number of valid arguments associated with this task
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.IterativeTask`2">
            <summary>
            Container for iterator handlers and their arguments
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask`2.#ctor(Microsoft.Ccr.Core.IteratorHandler{`0,`1})">
            <summary>
            Constructs a typed task instance associated with an iterator delegate
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask`2.PartialClone">
            <summary>
            Shallow clone of the task instance
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask`2.#ctor(`0,`1,Microsoft.Ccr.Core.IteratorHandler{`0,`1})">
            <summary>
            Constructs a typed task instance associated with an iterator delegate given some arguments
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask`2.ToString">
            <summary>
            Human readable description of the handler associated with the task
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask`2.Execute">
            <summary>
            Invoked by the dispatcher to execute the Handler associated with the task
            </summary> 
        </member>
        <member name="P:Microsoft.Ccr.Core.IterativeTask`2.Item(System.Int32)">
            <summary>
            Indexer for arguments associated with the task
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.IterativeTask`2.PortElementCount">
            <summary>
            Number of valid arguments associated with this task
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Task`2">
            <summary>
            Container for typed, non-iterator handlers and their arguments
            </summary> 
        </member>
        <member name="F:Microsoft.Ccr.Core.Task`2.Param0">
            <summary>
            Typed parameter passed to user delegate on task execution
            </summary> 
        </member>
        <member name="F:Microsoft.Ccr.Core.Task`2.Param1">
            <summary>
            Typed parameter passed to user delegate on task execution
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.Task`2.#ctor(Microsoft.Ccr.Core.Handler{`0,`1})">
            <summary>
            Constructs a typed task instance associated with a delegate
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.Task`2.ToString">
            <summary>
            Human readable description of the handler associated with the task
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.Task`2.PartialClone">
            <summary>
            Shallow clone of this task instance
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Task`2.#ctor(`0,`1,Microsoft.Ccr.Core.Handler{`0,`1})">
            <summary>
            Constructs a typed task instance associated with a delegate given some arguments
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.Task`2.Execute">
            <summary>
            Invoked by the dispatcher to execute the Handler associated with the task
            </summary> 
        </member>
        <member name="P:Microsoft.Ccr.Core.Task`2.Item(System.Int32)">
            <summary>
            Indexer for arguments associated with the task
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Task`2.PortElementCount">
            <summary>
            Number of valid arguments associated with this task
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.IterativeTask`3">
            <summary>
            Container for iterator handlers and their arguments
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask`3.#ctor(Microsoft.Ccr.Core.IteratorHandler{`0,`1,`2})">
            <summary>
            Constructs a typed task instance associated with an iterator delegate
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask`3.PartialClone">
            <summary>
            Shallow clone of the task instance
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask`3.#ctor(`0,`1,`2,Microsoft.Ccr.Core.IteratorHandler{`0,`1,`2})">
            <summary>
            Constructs a typed task instance associated with an iterator delegate given some arguments
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask`3.ToString">
            <summary>
            Human readable description of the handler associated with the task
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.IterativeTask`3.Execute">
            <summary>
            Invoked by the dispatcher to execute the Handler associated with the task
            </summary> 
        </member>
        <member name="P:Microsoft.Ccr.Core.IterativeTask`3.Item(System.Int32)">
            <summary>
            Indexer for arguments associated with the task
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.IterativeTask`3.PortElementCount">
            <summary>
            Number of valid arguments associated with this task
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Task`3">
            <summary>
            Container for typed, non-iterator handlers and their arguments
            </summary> 
        </member>
        <member name="F:Microsoft.Ccr.Core.Task`3.Param0">
            <summary>
            Typed parameter passed to user delegate on task execution
            </summary> 
        </member>
        <member name="F:Microsoft.Ccr.Core.Task`3.Param1">
            <summary>
            Typed parameter passed to user delegate on task execution
            </summary> 
        </member>
        <member name="F:Microsoft.Ccr.Core.Task`3.Param2">
            <summary>
            Typed parameter passed to user delegate on task execution
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.Task`3.#ctor(Microsoft.Ccr.Core.Handler{`0,`1,`2})">
            <summary>
            Constructs a typed task instance associated with a delegate
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.Task`3.ToString">
            <summary>
            Human readable description of the handler associated with the task
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.Task`3.PartialClone">
            <summary>
            Shallow clone of this task instance
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Task`3.#ctor(`0,`1,`2,Microsoft.Ccr.Core.Handler{`0,`1,`2})">
            <summary>
            Constructs a typed task instance associated with a delegate given some arguments
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.Task`3.Execute">
            <summary>
            Invoked by the dispatcher to execute the Handler associated with the task
            </summary> 
        </member>
        <member name="P:Microsoft.Ccr.Core.Task`3.Item(System.Int32)">
            <summary>
            Indexer for arguments associated with the task
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.Task`3.PortElementCount">
            <summary>
            Number of valid arguments associated with this task
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.Tuple`1">
            <summary>
            A type-safe, type-heterogeneous, item collection used for joins.
            </summary>
            <typeparam name="ITEM0">The type of the 0th item.</typeparam>
            <remarks>Indicies are 0-based.</remarks>
        </member>
        <member name="M:Microsoft.Ccr.Core.Tuple`1.#ctor">
            <summary>
            Construct an empty Tuple.
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Tuple`1.#ctor(`0)">
            <summary>
            Construct a Tuple, supplying the initial values.
            </summary>
            <remarks>Indicies are 0-based.</remarks>
            <param name="item0">The 0th item in the collection to construct.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Tuple`1.op_Implicit(Microsoft.Ccr.Core.Tuple{`0})~`0">
            <summary>
            Implicit conversion to 0th item.
            </summary>
            <remarks>Indicies are 0-based.</remarks>
            <param name="tuple">Tuple from which to access item.=.</param>
            <returns>Accessed item.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Tuple`1.ToItem0">
            <summary>
            Implicit conversion to 0th item.
            </summary>
            <remarks>Indicies are 0-based.</remarks>
            <returns>Accessed item.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.Tuple`1.Item0">
            <summary>
            The 0th item in the collection.
            </summary>
            <remarks>Indicies are 0-based.</remarks>
        </member>
        <member name="T:Microsoft.Ccr.Core.Tuple`2">
            <summary>
            A type-safe, type-heterogeneous, item collection used for joins.
            </summary>
            <typeparam name="ITEM0">The type of the 0th item.</typeparam>
            <typeparam name="ITEM1">The type of the 1th item.</typeparam>
            <remarks>Indicies are 0-based.</remarks>
        </member>
        <member name="M:Microsoft.Ccr.Core.Tuple`2.#ctor">
            <summary>
            Construct an empty Tuple.
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.Tuple`2.#ctor(`0,`1)">
            <summary>
            Construct a Tuple, supplying the initial values.
            </summary>
            <remarks>Indicies are 0-based.</remarks>
            <param name="item0">The 0th item in the collection to construct.</param>
            <param name="item1">The 1th item in the collection to construct.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.Tuple`2.op_Implicit(Microsoft.Ccr.Core.Tuple{`0,`1})~`0">
            <summary>
            Implicit conversion to 0th item.
            </summary>
            <remarks>Indicies are 0-based.</remarks>
            <param name="tuple">Tuple from which to access item.=.</param>
            <returns>Accessed item.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Tuple`2.ToItem0">
            <summary>
            Implicit conversion to 0th item.
            </summary>
            <remarks>Indicies are 0-based.</remarks>
            <returns>Accessed item.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Tuple`2.op_Implicit(Microsoft.Ccr.Core.Tuple{`0,`1})~`1">
            <summary>
            Implicit conversion to 1th item.
            </summary>
            <remarks>Indicies are 0-based.</remarks>
            <param name="tuple">Tuple from which to access item.=.</param>
            <returns>Accessed item.</returns>
        </member>
        <member name="M:Microsoft.Ccr.Core.Tuple`2.ToItem1">
            <summary>
            Implicit conversion to 1th item.
            </summary>
            <remarks>Indicies are 0-based.</remarks>
            <returns>Accessed item.</returns>
        </member>
        <member name="P:Microsoft.Ccr.Core.Tuple`2.Item0">
            <summary>
            The 0th item in the collection.
            </summary>
            <remarks>Indicies are 0-based.</remarks>
        </member>
        <member name="P:Microsoft.Ccr.Core.Tuple`2.Item1">
            <summary>
            The 1th item in the collection.
            </summary>
            <remarks>Indicies are 0-based.</remarks>
        </member>
        <member name="T:Microsoft.Ccr.Core.VariableArgumentHandler`1">
            <summary>
            A typed delegate with a variable number of typed arguments preceding an array of instances of the same type.
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.VariableArgumentTask`1">
            <summary>
            A Task container with a variable number of typed arguments.
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.VariableArgumentTask`1.#ctor(System.Int32,Microsoft.Ccr.Core.VariableArgumentHandler{`0})">
            <summary>
            Constructs a Task container with a variable number of typed arguments.
            </summary>
            <param name="varArgSize">Number of typed arguments</param>
            <param name="handler">The typed user delegate associated with the task.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.VariableArgumentTask`1.PartialClone">
            <summary>
            Shallow clone of this task instance
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.VariableArgumentTask`1.ToString">
            <summary>
            Human readable description of the handler associated with the task
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.VariableArgumentTask`1.Execute">
            <summary>
            Invoked by the dispatcher to execute the Handler associated with the task
            </summary> 
        </member>
        <member name="P:Microsoft.Ccr.Core.VariableArgumentTask`1.ArbiterCleanupHandler">
            <summary>
            Set by a top level arbiter so it can execute logic on task completion
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.VariableArgumentTask`1.LinkedIterator">
            <summary>
            Iterator that needs to be processed once current task completes
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.VariableArgumentTask`1.TaskQueue">
            <summary>
            Dispatcher queue to use for scheduling any tasks 
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.VariableArgumentTask`1.Item(System.Int32)">
            <summary>
            Indexer for arguments associated with the task
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.VariableArgumentTask`1.PortElementCount">
            <summary>
            Number of valid arguments associated with this task
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.VariableArgumentHandler`2">
            <summary>
            A typed delegate with a variable number of typed arguments preceding an array of instances of the same type.
            <remarks>Used as the continuation to join variable and joinarray</remarks>
            </summary>
        </member>
        <member name="T:Microsoft.Ccr.Core.VariableArgumentTask`2">
            <summary>
            A Task container with a variable number of typed arguments.
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.VariableArgumentTask`2.#ctor(System.Int32,Microsoft.Ccr.Core.VariableArgumentHandler{`0,`1})">
            <summary>
            Constructs a Task container with a variable number of typed arguments.
            </summary>
            <param name="varArgSize">Number of typed arguments</param>
            <param name="handler">The typed user delegate associated with the task.</param>
        </member>
        <member name="M:Microsoft.Ccr.Core.VariableArgumentTask`2.PartialClone">
            <summary>
            Shallow clone of this task instance
            </summary>
        </member>
        <member name="M:Microsoft.Ccr.Core.VariableArgumentTask`2.ToString">
            <summary>
            Human readable description of the handler associated with the task
            </summary> 
        </member>
        <member name="M:Microsoft.Ccr.Core.VariableArgumentTask`2.Execute">
            <summary>
            Invoked by the dispatcher to execute the Handler associated with the task
            </summary> 
        </member>
        <member name="P:Microsoft.Ccr.Core.VariableArgumentTask`2.ArbiterCleanupHandler">
            <summary>
            Set by a top level arbiter so it can execute logic on task completion
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.VariableArgumentTask`2.LinkedIterator">
            <summary>
            Iterator that needs to be processed once current task completes
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.VariableArgumentTask`2.TaskQueue">
            <summary>
            Dispatcher queue to use for scheduling any tasks 
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.VariableArgumentTask`2.Item(System.Int32)">
            <summary>
            Indexer for arguments associated with the task
            </summary>
        </member>
        <member name="P:Microsoft.Ccr.Core.VariableArgumentTask`2.PortElementCount">
            <summary>
            Number of valid arguments associated with this task
            </summary>
        </member>
    </members>
</doc>
